草庐IT

Qt-OpenCV

全部标签

c++ - 多线程中的 OpenCV CascadeClassifier C++ 接口(interface)

我想在多线程中使用CascadeClassifier对象运行OpenCVC++接口(interface)。我的程序的工作方式是我的主线程将“some_file.xml”加载到CascadeClassifier对象中。生成三个或更多线程,并将它们传递给级联对象。程序很快就崩溃了。我已经进行了多次测试并得出结论,在执行“detectmultiscale”函数时,CascadeClassifier对象不是线程安全的。我想避免每次产生新线程时都必须从硬盘读取相同的文件。如何避免这种情况? 最佳答案 如果您正在使用以新格式存储的Haar级联的

c++ - 使用 openCV 锐化视频图像

我想使用OpenCV锐化我的图像,我在网上查看了一个对灰度图像执行锐化的示例,我尝试了一下,效果很好。然而,我现在正尝试做同样的事情,但使用RGB颜色,所以我在三个channel上分别执行相同的功能,但它没有给我任何结果图像与原始图像完全一样。#include"Sharpening.h"usingnamespacestd;Sharpening::Sharpening(){}Sharpening::~Sharpening(){}IplImage*Sharpening::laplace(IplImage*channel){CvSizesize=cvSize(channel->width,c

c++ - 使用 Qt 将 HTML 转换为 PDF

我正在尝试将HTML文件转换为PDF。整个想法是创建一个包含许多页面的pdf,用HTML文件内容填充第一个页面。目前我正在尝试这样做,代码是:#include"qprinterexample.h"#include#include#include#include#include#includeintprint(){constinthighQualityDPI=300;QDir::setCurrent(QCoreApplication::applicationDirPath());QFilehtmlFile("ejemplo.htm");if(!htmlFile.open(QIODevic

c++ - 在 C++ 中使用 OpenCV 从摄像机流式传输视频时程序不会启动

是的,我有一个连接到PC的USB相机,我想使用OpenCV从它流式传输图像。这是我的代码:#include#include#includeintmain(){CvCapture*cameraCapture=cvCaptureFromCAM(CV_CAP_ANY);cvNamedWindow("Camera");while(1){IplImage*frame=cvQueryFrame(cameraCapture);cvShowImage("Camera",frame);if((cvWaitKey(10)&255)==27)break;}cvReleaseCapture(&cameraCa

c++ - QT 中的应用程序-> 处理消息?

在Borland6中,我经常使用它来解开程序操作:Application->Processmessages();现在,对于QT4.8.1,我没有在QT的这个外国(对我来说)文档中找到。谁能帮帮我? 最佳答案 在Qt中,您将使用静态函数QApplication::processEvents()。唉,你的问题是你的代码设计有问题。您永远不需要调用processEvents来简单地“解开”事情。您所有的GUI代码都应该由运行到完成的方法组成,这些方法需要很短的时间(大约几毫秒:~0.001秒)。如果某件事需要更长的时间,您必须将其分成更小

c++ - 使用 qt + qprinter 将工作 url 添加到 pdf

有没有一种简单的方法可以使用c++、qt和qprinter类将工作/可点击的url添加到pdf中?稍微澄清一下:我想在生成新文档时添加url。我不是要编辑现有的pdf。 最佳答案 您可以使用QTextDocument使用Qpr​​inter创建PDF。QTextDocument有setHtml()允许您使用包括在内的html标签的方法标签(google)。之后,您可以使用QTextDocumentprint()使用该HTML创建PDF方法。代码示例:QPrinterprinter(QPrinter::HighResolution);

c++ - 对比 openCV 拉伸(stretch)图像

我正在尝试使用cvNormalize将图像的对比度拉伸(stretch)到0-255的范围。但是当我打印出输出像素值时,一些负数显示为像素值。如果您能帮助我找出问题的根源,我将不胜感激。这是代码:cvNormalize(srcImage,dstImage,0,255,CV_MINMAX);for(intpixel=0;pixelheight*dstImage->width;pixel++){printf("%d\t",*(dstImage->imageData+pixel));} 最佳答案 因为imageData的类型是char*而

c++ - 使用 Python 在 OpenCV 中解析 XML 或 YML

这个问题在这里已经有了答案:FileStorageforOpenCVPythonAPI(6个答案)关闭6年前。使用openCV,您可以使用YML或XML格式保存/加载数据。cv::FileStorage使用c++API很容易。我无法让它与pythonAPI一起工作。`Here是使用opencvc++API创建的YML文件的示例。如果有人成功使用openCVpythonAPI加载它,请告诉我!

c++ - 在没有 openCV 的情况下使用 C++ 访问网络摄像头

我可以在不使用opencv(并且没有其他外部库)的情况下制作一些c++网络摄像头程序吗?我的想法是从网络摄像头获取数据并将其显示在窗口上,就像实时视频一样。你能给我举个例子吗?对不起,我的英语不好。非常感谢。 最佳答案 长话短说:对于Windows和C/C++,最直接的方法是使用DirectShow。这里有一个很好的DirectShowframegrabber包装器:http://www.muonics.net/school/spring05/videoInput/是的,您仍然需要安装DXSDK,但实际上我设法将所需的DShow接口

c++ - qt垃圾回收和智能指针

我正在考虑在我的qt工作中开始使用智能指针。让我感到困惑的是智能指针如何与Qt垃圾收集一起使用。整个Qt依赖于子QObject以QObject*parent作为ctor参数构造的习语,因此启用垃圾收集。例如:QWidget*mWidget=newQWidget(this);//Herewenotonly//ensurethatmWidgetwillbedeleted//whenitsparentisdeleted,butalsotellqt,//thatmWidgetisnotawindow,butbelongsto//parent'slayout现在,如果我想将mWidget包装到智