回复: 视频监控系统 V0.0.3
#241 [acanoe 01-21 18:27]
看源码,开始学习!
#242 [寒意 03-31 16:30]
先下来看看,谢谢分享
#243 [sicuanyx 05-06 00:05]
楼主,关于qt如何加入openCV库,我搞了很久,都不行,求指教
#244 [船长 05-20 21:42]
这三个细节,楼上的朋友,你在操作的时候,有没有注意到。 一般是在这边出错。
1、如果是64位的计算机,必须添加64位的lib文件
2、Qt开发的程序一般需要借助qmake生成makefile文件。由于qmake在解析路径的时候不能识别空格,因此需要确保OpenCV的安装路径中不能包含空格(C:\Program Files\OpenCV是不行的)。直接安装在C:\OpenCV位置。
3、最近在做有关OpenCV 方面的东西,由于GUI程序看起来比较和谐。于是用到了QT
目前来说学习OpenCV方面的书籍比较少,尤其是是老掉牙的那本《学习OpenCV》。
不过其中的有些算法还比较好。但是这本书主要应用C所以对于 OpenCV2.X 都不太合适
个人觉得学习OpenCV2.x的书是《OpenCV.2.Computer.Vision.Application.Programming.Cookbook》
里面就提到了有关OpenCV+QT的例子,而且都是C++版本
目前这本书只有英文版,英文还好的可以去看一看。
一般来说把图片直接显示到QT窗体上是用个label
代码
void MainWindow::displayMat(const cv::Mat &image)
{
QImage img= QImage((const unsigned char*)(image.data),
image.cols,image.rows,QImage::Format_RGB888);
// display on label,这里的img_label就是窗体上的label
ui->img_label->setPixmap(QPixmap::fromImage(img));
// resize the label to fit the image
ui->img_label->resize(ui->img_label->pixmap()->size());
}
不过这里要注意的就是那个Format,今天就出了个这样的问题,在算2值图像的时候想显示到窗体上,就出了问题。可是直接用 cv::imshow(const string& , cv::Mat);都没问题。
后来发现问题出现在QImage::Format这里。
对于RGB图像QImage::Format_RGB888没问题,但是对于2值图像的话,由于是单通道图像,就必须使用QImage::Format_Indexed8 了
参考网页:
http://blog.163.com/lucien_cc/blog/static/130290562201022743126906/
http://blog.chinaunix.net/uid-21222282-id-1829230.html
http://cooljstyle.diand ..
#245 [joyzone024 05-27 19:05]
/usr/local/lib/libxvidcore.so.4.1: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
请问楼主,我出现这种问题是什么原因?源程序加载库后可以在linux系统上运行,但是在QT/E环境下编译就出现这中问题,难道我需要找对应ARM平台的库文件吗?