首页 > 解决方案 > 如何将所选图像添加到 opencv2 中的 imread() 函数中

问题描述

我想从桌面选择一个随机图像并将该图像传递给 imread() 函数。目前,我已将预定义图像添加到 imread() 中。如何将随机选择的图像输入该功能?

img = cv2.imread("floor_plan_02.png", 0)

标签: pythonopencv

解决方案


如果您将桌面作为当前目录运行,则很简单:

import random
from glob import glob

# Get name of a random PNG file
filename = random.choice(glob('*.png'))

如果您使用不同的当前目录运行,您可以先将目录更改为桌面。或者您可以使用相当不错pathlib的方法从桌面加载随机 PNG:

from pathlib import Path
import random
import cv2

# Choose random filename from all PNG files on Desktop
filename = random.choice( list((Path.home() / 'Desktop').glob('*.png')) )

# Open that file with OpenCV
im = cv2.imread(str(filename))

推荐阅读