用imread函数读取图片,想要用resize()函数缩放图片,却报错“src is not a bumpy array,neither a scalar”,读取图片的type是numpy.ndarray。请问在使用imread函数读取图片的情况下,怎么将ndarray转成array?
代码给出来看下,一般是操作PIL的图片才会有这个错误吧
在图形处理过程中出现上面的错误‘src is not a bumpy array,neither a scalar’
报错原因:cv2只能处理BGR格式图片,而image.open()读取的图片是RGB格式。
解决方式:把RGB图片转化成BGR格式
import webcolors
def rgb_bgr(r_color):
"""
参数:
color---RGB或者BGR
返回值:
BGR或者RGB
"""
r_color_list = list(r_color)
tmp = r_color_list[0]
r_color_list[0] = r_color_list[2]
r_color_list[2] = tmp
r_color = webcolors.IntegerRGB(r_color_list[0], r_color_list[1], r_color_list[2])
return r_color