python - cv2可以直接加载上传的图片吗?

标签 python opencv flask

我的内存中有一个上传的文件。我想用 cv2 操作文件。目前,我将文件写入磁盘然后用 cv2 读取它。如何跳过写入文件并直接使用 cv2 加载它?

file = request.files['file']
# if file and allowed_file(file.filename):

# save file            
filename = secure_filename(file.filename)
file_path = os.path.join(dressrank.config['SHOW_IMG_FOLDER'], filename);
file.save(file_path)
img_path = file_path

# COLOR FATURE EXTRACTION
img = read_img(img_path)
img =img_resize(img, 500)

最佳答案

使用上传的数据构建一个 numpy 数组。使用 cv2 解码此数组。

img = cv2.imdecode(numpy.fromstring(request.files['file'].read(), numpy.uint8), cv2.IMREAD_UNCHANGED)

Prior to OpenCV 3.0, use cv2.CV_LOAD_IMAGE_UNCHANGED instead.


另请参阅:Python OpenCV load image from byte string

关于python - cv2可以直接加载上传的图片吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27517688/

相关文章:

python - 在 Python 3 中调用命令行参数

python - 以编程方式启动 python 虚拟机并与之交互

python - kivy 中绑定(bind)按钮的 On_Release 事件不起作用 - 运行 on_touch_down

python - opencv `cv2` python 模块中缺少 CAP_PROP_FRAME_COUNT 常量

python - GAE - Flask 无法从子目录导入 Jinja2?

javascript - 拖动时将 Google map 标记位置发送到 Flask

python - Flask多参数从一个url查询数据库的多列时如何避免多个if语句

python - 如何应用适当的阈值以去除二元板上的边缘

opencv createsamples没有错误,但是没有找到样本

Python Marshmallow 未检测到必填字段中的错误