读取图片存放于self.img_org 图片数据
添加标签 labelImage 显示图片容器
def dis_img(self):
# BGR => RGB 文件格式
shrink = cv2.cvtColor(self.img_org, cv2.COLOR_BGR2RGB)
# cv 图片转换成 qt图片
qt_img = QtGui.QImage(shrink.data, # 数据源
shrink.shape[1], # 宽度
shrink.shape[0], # 高度
shrink.shape[1] * 3, # 行字节数
QtGui.QImage.Format_RGB888)
# label 控件显示图片
self.labelImage.setPixmap(QtGui.QPixmap.fromImage(qt_img))
self.labelImage.show()
def dis_img(self): # 显示图片
shrink = self.img_org
# cv 图片转换成 qt图片
qt_img = QtGui.QImage(shrink.data, # 数据源
shrink.shape[1], # 宽度
shrink.shape[0], # 高度
shrink.shape[1], # 行字节数
QtGui.QImage.Format_Grayscale8)
# label 控件显示图片
self.ui.labelImage.setPixmap(QtGui.QPixmap.fromImage(qt_img))
self.ui.labelImage.show()
@staticmethod
def cv2QPix(img):
# cv 图片转换成 qt图片
qt_img = QtGui.QImage(img.data, # 数据源
img.shape[1], # 宽度
img.shape[0], # 高度
img.shape[1] * 3, # 行字节数
QtGui.QImage.Format_RGB888)
return QtGui.QPixmap.fromImage(qt_img)
cv_image = cv.cvtColor(np.asarray(r_image), cv.COLOR_RGB2BGR)
import cv2
from PIL import Image
import numpy
image = Image.open("img.jpg")
image.show()
img = cv2.cvtColor(numpy.asarray(image),cv2.COLOR_RGB2BGR)
cv2.imshow("OpenCV",img)
cv2.waitKey()
image = Image.fromarray(cv.cvtColor(self.img_org, cv.COLOR_BGR2RGB))
import cv2
from PIL import Image
import numpy
img = cv2.imread("img.jpg")
cv2.imshow("OpenCV",img)
image = Image.fromarray(cv2.cvtColor(img,cv2.COLOR_BGR2RGB))
image.show()
cv2.waitKey()
@staticmethod
def QImageToMat(qt_img):
qt_img = qt_img.convertToFormat(QImage.Format_RGB888) # 注意图片格式
width = qt_img.width()
height = qt_img.height()
# qt 图片的数据
ptr = qt_img.bits()
ptr.setsize(qt_img.byteCount())
# 拷贝数据与shape修改
arr = np.array(ptr).reshape(height, width, 3) # 注意图片通道数
return arr
@staticmethod
def convertBufferToMat(buffer, w, h, c=3):
# 1维 字节数组
randBytes = bytearray(buffer)
# # 拷贝数据与shape修改
arr = np.array(randBytes).reshape(h, w, c) # 注意图片通道
return arr