cv2.imread 和 cv2.imdecode 用法及区别
作者:zy_destiny 发布时间:2023-12-03 06:15:49
标签:cv2.imread,cv2.imdecode
对于路径中含有中文的图像,直接用cv2.imread读取会报错,上次看到有大佬使用cv2.imdecode就可以正常读取,有点好奇,所以今天来记录下二者用法和区别。
1.读取图像的两种方式对比
cv2.imread正常读取影像
import cv2
path = '/data/北京/beijing.png'
img = cv2.imread(path)
运行上述代码,会报错!
cv2.imdecode从内存中读取影像
import cv2
path = '/data/北京/beijing.png'
arr = np.fromfile(path, dtype=np.uint8)
img = cv2.imdecode(arr, flags=cv2.IMREAD_COLOR)
运行上述代码,成功!
并且imdecode得到的影像波段顺序是RGB,不是BGR,这是与opencv区别的地方。
函数说明:
np.decode 从内存的缓冲区读取图像
np.fromfile 将文本或二进制文件中数据构造成数组
2.保存图像的两种方式对比
cv2.imwrite 正常读取影像
import cv2
out_path = '/data/北京/beijing.png'
cv2.imwrite(out_path,img)
运行上述代码,会报错!
cv2.imdecode从内存中读取影像
import cv2
out_path = '/data/北京/beijing.png'
arr = cv2.imencode('png',img)
out[1].tofile(out_path)
运行上述代码,成功!
函数说明:
cv2.encode 将图像编码到内存缓冲区中
np.tofile 将数组中的数据以二进制格式写进文件
来源:https://blog.csdn.net/qq_38308388/article/details/129199454
0
投稿
猜你喜欢
- 下面就是我们的authenticate.asp页面,在这里,将用户的信息收集起来,连同最初的URL一起传到一个识别用户身份的页面中。我们可用
- python3的编码问题。打开python开发工具IDLE,新建‘codetest.py'文件,并写代码如下:import sysp
- 原来图片自适应宽度一般都是通过Javascript来解决的,但是多少还是比较麻烦。还有一种通过设置外层容器overflow:hidden属性
- 一、什么是执行计划(explain plan) 执行计划:一条查询语句在ORACLE中的执行过程或访问路径的描述。 二、如何查看执行计划 1
- 如何用下拉列表显示数据库里的内容? 我们来看看实现这个功能的程序:<%Dim objDC, objRSS
- var a = 0, b = 0;[0, 0].sort(function() {a = 1;return 0;});[0, 1].sort
- Memento备忘录模式 备忘录模式一个最好想象的例子:undo! 它对对象的一个状态进行了'快照', 在你需要的时候恢复原
- Ajax在网上已经叫喊了好几年了, 但是还是有很多像我这样的新手没掌握它, 像这样能改善交互体验的技术不会用真是很遗憾呢. 所以我就把我学到
- 因为神奇的中文有时也是会遇到国外同学都不知道原因导致一些神奇滴问题,所以要用更神奇的英文来解决问题。Mac OS的一些:华文细黑:STHei
- 相关代码:JavaScript写的日期时间控件,很好用 13个超酷的js显示时间效果 <html><head><
- 1.用一个栈【python中可以用List】就可以解决,时间和空间复杂度都是O(n)# -*- coding: utf8 -*-# 符号表S
- Javascript函数类型判断完美解决方案在判断函数类型时,我们通常使用typeof方法,一般情况下,它会得到我们所预想的效果。但是,有一
- 倒排索引一 倒排索引是什么倒排索引源于实际应用中需要根据属性的值来查找记录,这种索引表中的每一个项都包括一个属性值和具有该属性值的各记录的地
- 前言: 在爬虫过程中,我们可能需要重复的爬取同一个网站,为了避免重复的数据存入我们的数据库中 通过实现增量去重 去解决这一问题 本文还针对了
- PHP levenshtein() 函数实例计算两个字符串之间的 Levenshtein 距离:<?php echo levensht
- 本文实例讲述了利用PHP函数计算中英文字符串长度的方法。分享给大家供大家参考。具体实现方法如下:一般来说大家知道英文字符占一个字节,而中文字
- 当服务器必须提供与两个或更多个网络或网络子网的连接时,典型的方案是使用多宿主计算机。此计算机通常位于外围网络(也称为 DMZ、外围安全区域或
- 1、简单应用代码如下:#!/usr/bin/env python# -*- coding: utf-8 -*-# @File : jieba
- Session作用Session的根本作用就是在服务端存储用户和服务器会话的一些信息。典型的应用有:1、判断用户是否登录。2、购物车功能。s
- 1 发送文本信息'''加密发送文本邮件'''def sendEmail(from_addr,