失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 如何将图像保存至计算机G7X opencv之读入一幅图像 显示图像以及如何保存一副图像

如何将图像保存至计算机G7X opencv之读入一幅图像 显示图像以及如何保存一副图像

时间:2019-06-15 10:13:43

相关推荐

如何将图像保存至计算机G7X opencv之读入一幅图像 显示图像以及如何保存一副图像

本文使用的函数:

cv2.imread()读入一幅图像cv2.imshow()显示一幅图像cv2.imwrite()写入一幅图像

读入图像

cv2.imread(参数1,参数2)

第一个参数是要读取图像的路径

就算图像的径是错误的OpenCV 也不会提提醒你但是当你使用命令print image时得到的结果是None。

第二个参数是数应如何取幅图片,他有一下几个可取值

cv2.IMREAD_COLOR入一副彩色图像,图像的明度会忽略(默认参数)61 cv2.IMREAD_GRAYSCALE以灰度模式入图像cv2.IMREAD_UNCHANGED入一幅图像并且包括图像的 alpha

代码演示

有代码可见,读取成功,第二个参数为0,表示使用默认参数

显示图像

我们读取到了这个图片之后,我们应该显示它,因为输出只输出一堆参数,我们可以使用imshow方法来显示

imshow(参数1,参数2)

参数1的意思就是显示的这张图片的窗口的名字,参数二是显示哪张图片(就是我们刚才读到的那张)

这个代码就是显示image并且命名窗口为first,但有一个问题,这个程序运行一瞬间就关闭,如何才能持久话这个窗口呢

使用cv2.waitkey(参数)方法可以解决这个问题,这个方法是盘绑定函数,它参数是一个毫秒单位的数字,假如

cv2.waitkey(2000),这个程序就相当于堵塞式程序,这个意思就是在两秒之内如果有键盘按下,则这个程序会立刻继续往下执行,如果两秒之内没有键盘按下,两秒之后,程序也会往下执行,就是说最多堵塞两秒钟,这样图片就可以显示至少两秒钟

如果我们在这两秒之内按下键盘的话,它的返回值是按下键盘的ascii码,如果没有按下键盘盘入则返回值为-1

如果当这个参数为0的时候,那么这个堵塞程序时间是无限,什么时候按下键盘,什么时候程序往下执行,如果不按下则程序永远无法往下执行,这就使的该程序变成图片永久显示,什么时候按下键盘,程序才会往下走完,图片消失

程序运行完之后窗口就会被销毁,当然也可以直接通过方法cv2.destroyAllWindows()来销毁窗口,不用等到方法执行完成如果你想删特定的窗口可以使用 cv2.destroyWindow()在括号内入你想删的窗口名

我们显示这个窗口的大小是没有办法来调整的,但是当我们使用

cv2.namedWindow(窗口名,参数)方法的时候,就可以调整显示这个图片大小

窗口名和上面的那个一致,参数有两个:

cv2.WINDOW_AUTOSIZE----默认cv2.WINDOW_NORMAL---只有这个参数才可以调整窗口最终代码为

保存图像

cv2.imwrite(参数1,参数2)参数1为保存的名字,参数2为保存的图片

代码

保存图像完成

下面完成一个demo

当显示图像的时候,按下esc是退出不保存,按下s是退出保存

这个程序有以下几点需要注意,第一点

cv2.waitkey(0)&0xFF,因为我的计算机是64进制,32进制的而不需要

key==27,其中27表示按键esc

ord('s')表示按键s

最终代码

# -*- coding: utf-8 -*-import numpy as npimport cv2image=cv2.imread('o.jpg',0)cv2.namedWindow('first', cv2.WINDOW_NORMAL)cv2.imshow("first",image)key=cv2.waitKey(0)&0xFFif key==27:cv2.destroyAllWindows()elif key==ord('s'):cv2.destroyAllWindows()cv2.imwrite('q.jpg', image)

举报/反馈

如何将图像保存至计算机G7X opencv之读入一幅图像 显示图像以及如何保存一副图像 基础操作...

如果觉得《如何将图像保存至计算机G7X opencv之读入一幅图像 显示图像以及如何保存一副图像 》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。