![](/img/trans.png)
[英]<built-in function imread> returned NULL without setting an error
[英]Object Detection Images folder read return <built-in function imread> returned NULL without setting an error
我正在创建一个 python 脚本来分析和检测对象检测文件夹中测试图像文件夹中的 jpg 图像中的对象。 运行对象检测 API jupyter notebook 在读取和检测测试图像文件夹中的对象时效果很好。 但是,使用 CMD 或 python shell 在 pyhton 脚本中运行代码会出现以下错误:
image = cv2.imread(TEST_IMAGE_PATHS)
SystemError: <built-in function imread> returned NULL without setting an error
与错误相关的代码:
PATH_TO_TEST_IMAGES_DIR = 'D:/New folder/models/research/object_detection/test_images'
TEST_IMAGE_PATHS = [ os.path.join(PATH_TO_TEST_IMAGES_DIR, 'image{}.jpg'.format(i)) for i in range(1, 30) ]
# Load image using OpenCV and
# expand image dimensions to have shape: [1, None, None, 3]
# i.e. a single-column array, where each item in the column has the pixel RGB value
image = cv2.imread(TEST_IMAGE_PATHS)
image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
image_expanded = np.expand_dims(image_rgb, axis=0)
有任何想法吗?
您的问题是TEST_IMAGE_PATHS
,其中包含路径列表,但imread()
需要单个路径。
如果要加载单个图像,则必须使用索引 - 即。 [0]
第一张图片
image = cv2.imread(TEST_IMAGE_PATHS[0])
如果要处理所有图像,则必须使用for
-loop
all_images = []
for path in TEST_IMAGE_PATHS:
image = cv2.imread(path)
# keep on list
all_images.append(image)
甚至在同一个循环中处理所有图像
all_images_expanded = []
for path in TEST_IMAGE_PATHS:
image = cv2.imread(path)
image = cv2.imread(TEST_IMAGE_PATHS)
image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
image_expanded = np.expand_dims(image_rgb, axis=0)
# keep on list
all_images_expanded.append(image_expanded)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.