黑马程序员技术交流社区

标题: 【上海校区】Python图像处理(2):图像显示 [打印本页]

作者: 不二晨    时间: 2018-10-8 11:08
标题: 【上海校区】Python图像处理(2):图像显示


1.    OpenCV图像显示

之前用cv2.imshow显示图像,但这种方式无法显示的窗口无法调整大小,当显示的图像比较大的时候就无法看到完整的图像,因此我们先创建窗口再显示图像:



opencv采用窗口名称来访问窗口,而不是窗口句柄之类的东西。

flags为0表示窗口可以用鼠标来改变大小,此时显示的图像也跟着窗口大小变化,需要注意的是它可能会导致图像的变形:




cv2.namedWindow最终使用下面的c函数完成具体的功能:



这里的flags可以接受的值为:


2.    matplotlib图像显示
接下来试试用matplotlib显示图像:


图像的颜色有误:



将第1通道和第3通道交换后显示:



这回正常了:




从前面可以看到cv2.imshow与plt.imshow的差异。cv2.imshow显示的图像窗口难以按比例缩放,但如果用plt.imshow则需要交换第一个颜色通道和第三个颜色通道。


3.    用plt读取图像

再比较一下plt.imread和cv2.imread的差别:



上述代码读取同一张图像并用相同的方法显示,差异还是在颜色通道上:





4.    matplotlib显示灰度图

对于只有一个颜色通道的图像,matplotlib可以指定一个map,将单个颜色通道的图像转换为彩色图像。


matplotlib支持下面的map。



选择一个map进行显示:


结果如下:





【转载】https://blog.csdn.net/lights_joy ... 907?utm_source=copy

作者: 不二晨    时间: 2018-10-10 11:40
奈斯
作者: 魔都黑马少年梦    时间: 2018-11-1 16:32





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2