im7图像文件到openCV

2024-06-25 22:37:44 发布

您现在位置:Python中文网/ 问答频道 /正文

能够通过matplotlib显示图像,但无法通过cv2.imshow显示。图像的形状与opencv所需的格式不一致。需要有关更改的帮助才能通过命令cv2.imshow显示

你知道吗测试.jpg是来自web的随机jpg文件

import numpy as np
import cv2
import matplotlib.pyplot as plt
import ReadIM


img = cv2.imread('test.jpg')
vbuff, vatts = ReadIM.extra.get_Buffer_andAttributeList('test.im7')
v_array, vbuff = ReadIM.extra.buffer_as_array(vbuff)

print (np.shape(v_array))
print (v_array[0])
print (np.shape(img))

# Showing image through matplotlib
plt.imshow(v_array[0])
plt.show()

#Showing image through cv2
cv2.imshow('image',v_array[0])
cv2.waitKey(0)
cv2.destroyAllWindows()

# Remove memory
#del(vbuff)
ReadIM.DestroyBuffer(vbuff)
ReadIM.DestroyAttributeListSafe(vatts)

test.im7


Tags: test图像imageimportmatplotlibasnpplt
1条回答
网友
1楼 · 发布于 2024-06-25 22:37:44

将图像规格化为(0255)就可以了

img = cv2.normalize(img, None, 255,0,cv2.NORM_MINMAX,dtype = cv2.CV_8UC1)
cv2.imshow('image',img)

相关问题 更多 >