IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> opencv安上后编译运行的奇怪问题 -> 正文阅读

[人工智能]opencv安上后编译运行的奇怪问题

这是网上剽的一段基于opencv的人脸识别项目,原来跑在树梅派是OK的,服务器安完后直接跑居然出问题

#include <opencv4/opencv2/core/core.hpp>
#include <opencv4/opencv2/imgproc/imgproc.hpp>
#include <opencv4/opencv2/opencv.hpp>

#include <vector>
#include <cstdio>

using namespace std;
using namespace cv;

int main()
{

    // 【1】加载分类器
    CascadeClassifier cascade;
    cascade.load("/home/pi/opencv/data/haarcascades/haarcascade_frontalface_alt2.xml");

    Mat srcImage, grayImage, dstImage;
    // 【2】读取图片
    srcImage = imread("./woman.jpeg");
    dstImage = srcImage.clone();
    imshow("【原图】", srcImage);

    grayImage.create(srcImage.size(), srcImage.type());
    cvtColor(srcImage, grayImage, COLOR_BGR2GRAY); // 生成灰度图,提高检测效率

    // 定义7种颜色,用于标记人脸
    Scalar colors[] =
        {
            // 红橙黄绿青蓝紫
            CV_RGB(255, 0, 0),
            CV_RGB(255, 97, 0),
            CV_RGB(255, 255, 0),
            CV_RGB(0, 255, 0),
            CV_RGB(0, 255, 255),
            CV_RGB(0, 0, 255),
            CV_RGB(160, 32, 240)};

    // 【3】检测
    vector<Rect> rect;
    cascade.detectMultiScale(grayImage, rect, 1.1, 3, 0); // 分类器对象调用

    printf("检测到人脸个数:%d\n", rect.size());

    // 【4】标记--在脸部画圆
    for (int i = 0; i < rect.size(); i++)
    {
        Point center;
        int radius;
        center.x = cvRound((rect[i].x + rect[i].width * 0.5));
        center.y = cvRound((rect[i].y + rect[i].height * 0.5));

        radius = cvRound((rect[i].width + rect[i].height) * 0.25);
        circle(dstImage, center, radius, colors[i % 7], 2);
    }

    // 【5】显示
    imshow("【人脸识别detectMultiScale】", dstImage);
    imwrite("./res.jpg", dstImage);
    waitKey(0);
    return 0;
}

问题:
terminate called after throwing an instance of 'cv::Exception' what(): OpenCV(4.5.5-dev) /home/yaoxuetao/opencv-master/modules/highgui/src/window.cpp:1267: error: (-2:Unspecified error) The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Cocoa support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function 'cvShowImage'
原以为是安包的问题,安了提示的libgtk2.0-dev后未果,偶然间尝试换掉
cascade.load(“/home/pi/opencv/data/haarcascades/haarcascade_frontalface_alt2.xml”);
中的训练数据,换到安装目录下的数据,对于我的:
cascade.load(“/usr/local/share/opencv4/haarcascades/haarcascade_frontalface_alt2.xml”);
这个make的时候能够看到安了哪些东西(这个设计模式注意学习,安的路径打出来)

这个其实就是训练好的数据,根据后缀名有人脸,微笑,全身等等,但是至于为什么版本不匹配居然会出现找不到回调函数确实想不明白,软件的这种bug还是应该注意的,看起来风马牛不相及的两件事!
改对路径后运行ok。

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-05-01 15:44:16  更:2022-05-01 15:45:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 8:46:04-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码