解决opencv显示图片的问题!

OpenCV显示图片

经过两天的时间,终于把python版和c版的opencv显示图片问题解决了,一把心酸一把泪啊!!!!!下边分享一下解决的过程!
刚开始接触opencv,需要安装opencv:
python版的直接在cmd安装opencv包就行: pip install opencv-python
c语言版要使用vs,安装opencv需要下载opencv安装包,然后解压,配置在控制台配置opencv ,过程如下:
1.新建项目,选择Win32控制台应用程序,名称为项目名称,位置就是存储的位置,然后确定。
在这里插入图片描述
2.点击下一步
在这里插入图片描述
3.此处需要将“空项目”打钩,将“安全开发生命周期检查”前面的√去掉,点击完成。
在这里插入图片描述
4.打开“视图”——“其他窗口”——“属性管理器”,打开后可以看到右边的“属性管理器”的小窗口。在这里插入图片描述
5.如图,打开“Debug|x64”里的 “Microsoft.Cpp.x64.user”,然后打开属性。
在这里插入图片描述
6.选择“通用属性”里的“VC++ 目录”,需要将里边的“包含目录”和“库目录”添加路径。
在这里插入图片描述
7. “包含目录”添加三个路径:
D:\OpenCV\opencv\build\include
D:\OpenCV\opencv\build\include\opencv
D:\OpenCV\opencv\build\include\opencv2在这里插入图片描述在这里插入图片描述
8.“库目录”需要添加一个路径:
D:\OpenCV\opencv\build\x64\vc14\lib
在这里插入图片描述
9.打开“链接器”里的“输入”,需要对附加依赖项添加路径
opencv_world331d.lib
opencv_world331.lib

在这里插入图片描述
在这里插入图片描述
这样就配置完成了!其实我的配置还是比较顺利的,主要当我导入图片验证图片时,验证opencv安装是否成功时,两个版本都无法读入图像!在网上搜索各种错误,各种调试就是不行(有的说是反斜杠的原因,有的说相对路径和绝对路径的原因,还有图片格式的原因),各种不好使!最后用过各种琢磨终于成功了!,跟大家说说几点注意的原因:
在vs2015中
1.文件路径问题。不管你的运行文件和所要现实的图片是否在一个文件夹,最好都换成绝对路径,这样养成习惯,以后不容易出错!
2.反斜杠问题。对于反斜杠我用的是“/”,即"D:/python37项目/计算机.jpg",因为之前尝试r"D:\python37项目\计算机.jpg"和双斜杠"D:\python37项目\计算机.jpg"都失败了。所以建议用“/”不容易出错。
3.图片命名问题。注意,图片的文件名是不需要带格式的,但在路径中是需要带格式的。
在这里插入图片描述
这样就成功了!

#include <opencv2\highgui\highgui.hpp>

#include <iostream>



using namespace  cv;

using namespace  std;



int main(int argc, const char** argv)

{

	Mat img = imread("D:/python37项目/计算机.jpg", CV_LOAD_IMAGE_UNCHANGED);

	if
		(img.empty())

	{

		cout << "图像加载失败!"<< endl;

		//system("pause");

		return -1;

	}

	//创建一个名字为MyWindow的窗口

	namedWindow("MyWindow", CV_WINDOW_AUTOSIZE);

	//在MyWindow的窗中中显示存储在img中的图片

	imshow("MyWindow", img);

	//等待直到有键按下

	waitKey(0);

	//销毁MyWindow的窗口

	destroyWindow("MyWindow");

	return 0;

}


    

结果如下:
在这里插入图片描述


最后最重要的一点!!!关于Python解释器运行opencv读取图片时,路径不能有中文!路径不能有中文!路径不能有中文!
重要的事情说三遍!!!(spyder 和pycharm 我都试过了,切记啊!!!)
代码如下:

import cv2
import numpy as np

img = cv2.imread(“D:/1.jpg”)
emptyImage = np.zeros(img.shape, np.uint8)

emptyImage2 = img.copy()

emptyImage3=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
#emptyImage3[…]=0

cv2.imshow(“EmptyImage”, emptyImage)
cv2.imshow(“Image”, img)
cv2.imshow(“EmptyImage2”, emptyImage2)
cv2.imshow(“EmptyImage3”, emptyImage3)
cv2.imwrite("./cat2.jpg", img, [int(cv2.IMWRITE_JPEG_QUALITY), 5])
cv2.imwrite("./cat3.jpg", img, [int(cv2.IMWRITE_JPEG_QUALITY), 100])
cv2.imwrite("./cat.png", img, [int(cv2.IMWRITE_PNG_COMPRESSION), 0])
cv2.imwrite("./cat2.png", img, [int(cv2.IMWRITE_PNG_COMPRESSION), 9])
cv2.waitKey (0)

结果如下:
在这里插入图片描述

希望对你有所帮助!!!

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值