opencv 能读取到图片,但是显示灰色 |
您所在的位置:网站首页 › 灰色的图像图片 › opencv 能读取到图片,但是显示灰色 |
今天接着在看canny边缘检测,却又遇到了问题,用的VS2017 Opencv 3.3.0 ,就是opencv 能读取到图片,但是显示灰色的一个窗口,且一闪而过。 下面是我出现问题的代码: 未运行成功的代码: #include "stdafx.h" #include "cv.h" // OpenCV 文件 #include "cvaux.h" #include "cxcore.h" #include "opencv2/opencv.hpp" #include "opencv2/imgproc/imgproc.hpp" #include "opencv2/highgui/highgui.hpp" #include #include using namespace cv; using namespace std; //-----------------------------------【main( )函数】-------------------------------------------- // 描述:控制台应用程序的入口函数,我们的程序从这里开始 //------------------------------------------------------------------------------------------------- int main() { //【0】载入原始图 Mat srcImage = imread("1.jpg"); imshow("yuanshitu", srcImage); Mat dstImage, edge, grayImage; //参数定义 //【1】创建与src同类型和大小的矩阵(dst) dstImage.create(srcImage.size(), srcImage.type()); cvtColor(srcImage, grayImage, COLOR_BGR2GRAY); //【3】先用使用 3x3内核来降噪 blur(grayImage, edge, Size(3, 3)); //【4】运行Canny算子 Canny(edge, edge, 3, 9, 3); //【5】显示效果图 imshow("xiaoguotu", edge); waitKey(0); return 0; }然后我上网搜了一下图片显示灰色是什么原因,大多数说是因为你图片没有读取到,图片路径不对等等,于是我加入测试代码,看看到底图片有没有读取成功, 测试代码如下: /************测试图片是否读取成功********************/ /* if (!srcImage.empty()) { std::cout |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |