openCV学习记录之加载与保存图像

首先我们来看一个实例

import cv2 as cv

src=cv.imread(r"C:\Users\DELL\Desktop\TIM20180421221302.png")
cv.namedWindow("impot image",cv.WINDOW_AUTOSIZE)
cv.imshow("input image",src)
cv.imwrite("路径",img)
cv.waitKey(0)
cv.destroyAllWindows()

第一行不用说是导入包,第三行:调用openCV中的imread函数来读取图像(后面是图像路径)。第四行:用来创建一个窗口,第五行用来展示图片,其实也是展示一个窗口,至于这两个窗口的区别下面再说。第六行是用来保存图片,引号里面是路径(注意路径里面不要有英文)(如果报错的话试着把斜杠改成反斜杠或者变成imwrite(r"路径")这样的格式)。第七行是用来接收一个标志。最后一行用来关闭窗口。
下面我们来看上面说的两个窗口的区别:
第一个窗口:
在这里插入图片描述
下面看第二个窗口:
在这里插入图片描述
这里说一下namedWindow这个函数:
void namedWindow(const string& winname, int flags=WINDOW_AUTOSIZE)
然后说明一下两个参数:
第一个:const string& 型的name,指用作窗口的表示符的窗口的名称。
第二个:int类型的flags,窗口的标识有以下几种:

flags标识种类:
WINDOW_NORMAL,可以更改窗口的大小(没有限制)。OpenCV2中可以写为CV_WINDOW_NORMAL。
WINDOW_AUTOSIZE,窗口大小会自动调整以适应所显示的图像,并且不能修改窗口大小。OpenCV2中可以写为CV_WINDOW_AUTOSIZE。此参数是默认值。
WINDOW_OPEMGL,窗口会支持OpenGL。OpenCV2中可以写为CV_WINDOW_OpenGL。

如果有相同名称的窗口已存在,则函数不做任何事情。
然后我发现其实去掉namedWindow函数也不会影响第二个图片输出:在这里插入图片描述
至于为什么前面要加个

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

许倾墨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值