当前位置:   article > 正文

Python图像处理的三种方法_python 图像处理

python 图像处理

 前言:最近在做微观电子器件的表面缺陷检测,用pyqt5做一个调用海康威视的gige接口的工业相机界面,官网上的代码是用的tkinter去做的界面,tkinter修改界面都是要在代码上进行修改有点麻烦,我在官网给的basicdemo.py上修改成pyqt的界面,后续可以直接用qtdesigner进行修改很方便,在更换框架的过程中,发现在取流显示在label_1上、拍完照把照片显示在label_2上和保存拍完的照片tkinter和pyqt有点差别,所以学习了一下图像组成,图像读取、处理、显示、保存等问题

一、opencv处理图像

1、opencv默认读入BGR通道顺序,读取的是数组类型numpy.ndarray,需要交换到rgb通道顺序才能用plt显示,不然会因为通道顺序不一致出现色偏。类型unit8,0-255。读取的图片格式是(H,W,C)。

  1. # opencv库
  2. import cv2 as cv
  3. src=cv.imread('car.jpg')
  4. print(src)
  5. print(src.size) # (12502500)
  6. print(src.shape) # (1667,2500,3)
  7. # ship_RGB_2 = cv.cvtColor(src, cv.COLOR_BGR2RGB)
  8. img = cv.resize(src,(800,600)) # cv库的resize
  9. cv.imshow('input_image', img)
  10. cv.imwrite('car_1.jpg',img)
  11. cv.waitKey(0)
  12. cv.destroyAllWindows()

 二、Image处理图像

2、Image默认读入的是PIL格式,默认读入通道顺序RGB,需要转换到numpy格式,转换后的数组为unit8,0-255。读取的形状为:(H,W,C)。

  1. # PIL库
  2. from PIL import Image
  3. import numpy as np
  4. img = Image.open('car.jpg')
  5. print(img)
  6. print(img.size) # (2500,1667)
  7. c = np.array(Image.open("car.jpg")) # 将PIL读取的图像格式转化成数组,才可对其进行操作
  8. print(c.shape, c.dtype) # 转为数组格式后才能使用shape参数
  9. img = Image.fromarray(np.uint8(img)).resize((800, 600), Image.ANTIALIAS) # 将数组转为PIL格式才能显示
  10. img.save('car_2.jpg')
  11. img.show()

三、Matplotlib处理图像

3、Matplotlib 默认读入RGB通道顺序,读取的是数组类型numpy.ndarray

  1. #Matplotlib库
  2. import matplotlib.image as mpimg
  3. import matplotlib.pyplot as plt
  4. from PIL import Image
  5. import numpy as np
  6. lena = mpimg.imread('car.jpg') # 这里读入的数据是 float32 型的,范围是0-1
  7. # 此时 lena 就已经是一个 np.array 了,可以对它进行任意处理
  8. print(lena)
  9. print(type(lena))
  10. plt.imshow(lena)
  11. plt.axis('off') # 不显示坐标轴
  12. plt.savefig("car_3.jpg")
  13. plt.show()

图像的一些参数:

  1. type(img) #numpy.ndarray
  2. img.size #2040000
  3. img.dtype #dtype('uint8')

 最终成功实现读取gige接口的工业相机,取流、拍照、保存界面

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/554809
推荐阅读
相关标签
  

闽ICP备14008679号