将遇到的问题罗列在此:
1.不能编译运行提示找不到编译器。
目录下面有中文符号。
2.编辑器内不能显示光标。
此问题可能是因为使用谷歌输入法造成的,修改内嵌编辑模式。
http://hi.baidu.com/befreedoma/item/1ded81e0f0018edbeb34c962
---------------------------------
2014-5-22 该方法第一次更改后可以,下次又出现该问题。据说是和谷歌输入法冲突,改为qq输入法试试。
同时,谷歌输入法无法输入中文菜单。更改为qq输入法此问题仍然存在,在记事本内复制过去可以。
3.图像经过canny变换后无法在标签内显示。
调试后发现是因为对图像大小进行了调整,canny部分恰好丢失了。将缩放语句去掉,canny效果能够显示出来。
4.编译可以运行,其debug下exe文件无法运行,提示"无法启动此程序 因为程序中丢失qt5cored.dll".百度后发现环境变量没有设置,添加如下环境变量:
Qt\Qt5.2.1\5.2.1\mingw48_32\bin
可以运行。
5. 重置图像大小会导致图像全黑。
//dstImage无法传递到Qimage内,2014/6/20 22:43. 因为重置会到导致全黑。
Mat srcGray;
cvtColor(srcImage,srcGray,CV_RGB2GRAY);
int threshold_value=128;
int max_BINARY_value=255;
int threshold_type=THRESH_BINARY;
threshold(srcGray, dstImage, threshold_value, max_BINARY_value,threshold_type );
imshow("li",dstImage);
img = QImage((const unsigned char*)(dstImage.data),dstImage.cols,dstImage.rows, dstImage.cols*dstImage.channels(),QImage::Format_Indexed8);
// img=img.scaled(ui->label1->size());
ui->label2->setPixmap(QPixmap::fromImage(img));
解决方式:需要提前将图像进行缩放以适应标签。
cv::resize(srcImage,srcImage,Size(ui->label1->width(), ui->label1->height()),0,0,3);