成功解决cv2.imwrite(filename, img)代码输出中文文件乱码的问题(cv2.imencode方法解决)
2023-09-14 09:04:51 时间
成功解决cv2.imwrite(filename, img)代码输出中文文件乱码的问题(cv2.imencode方法解决)
目录
解决问题
cv2.imwrite(filename, img)代码,输出中文文件乱码的问题
解决思路
中文乱码,利用imencode方法,cv2.imencode('.jpg', img)[1].tofile(filename)
cv2.imdecode()函数:从指定的内存缓存中读取数据,并把数据转换(解码)成图像格式;主要用于从网络传输数据中恢复出图像。
cv2.imencode()函数:是将图片格式转换(编码)成流数据,赋值到内存缓存中;主要用于图像数据格式的压缩,方便网络传输。
1、从网络读取图像数据并转换成图片格式
# -*- coding: utf-8 -*-
import numpy as np
import urllib
import cv2
url = 'http://www.pyimagesearch.com/wp-content/uploads/2015/01/google_logo.png'
resp = urllib.urlopen(url)
image = np.asarray(bytearray(resp.read()), dtype="uint8")
image = cv2.imdecode(image, cv2.IMREAD_COLOR)
cv2.imshow('URL2Image',image)
cv2.waitKey()
2、将图片编码到缓存,并保存到本地
# -*- coding: utf-8 -*-
import numpy as np
import urllib
import cv2
img = cv2.imread('0122.jpg')
# '.jpg'表示把当前图片img按照jpg格式编码,按照不同格式编码的结果不一样
img_encode = cv2.imencode('.jpg', img)[1]
# imgg = cv2.imencode('.png', img)
data_encode = np.array(img_encode)
str_encode = data_encode.tostring()
# 缓存数据保存到本地
with open('img_encode.txt', 'w') as f:
f.write(str_encode)
f.flush
参考文章
OpenCV-Python cv2.imdecode()和cv2.imencode() 图片解码和编码
解决方法
将
cv2.imwrite(filename, img)
改为
cv2.imencode('.jpg', img)[1].tofile(filename)
哈哈,大功告成!
相关文章
- 教你解决Sublime Text中文乱码问题
- centos下的python无法打印中文
- 读取Properties文件以及中文乱码问题
- 【问题解决方案】本地代码文件上传到GitHub里中文乱码问题
- Sphider + SCWS 打造完美PHP中文搜索引擎
- JAVA压缩解压ZIP文件,中文乱码还需要ANT.JAR包
- android api 中文 (73)—— AdapterView
- Android中文API(130) —— Html
- 91. SAP 系统里的中文数据,用 ABAP 导出成 Excel 文件时遇到乱码的分析和解决办法
- Atitit.检测文本文件的编码 自动获取文件的中文编码
- paip.enhes efis 自动获取文件的中文编码
- paip.解决中文url路径的问题图片文件不能显示
- 获取用户的中文姓名,手机号,邮箱,地址,年龄等随机信息,MD5加密等常用的工具。
- 用get方式提交请求的url带有中文参数
- Qt项目在中文路径下编译是无反应的
- JS:正则RegExp对象匹配中文汉字
- 美国诚实签经验——中英文行程单、往返机票、用英语面试的申请者通过率>用中文面试的申请者的通过率、一直保持着微笑,看上去很自信,也很诚恳、户口簿带上最好
- Mysql 导入CSV文件,中文内容乱码问题
- 论文投稿指南——中文核心期刊推荐(电子、通信技术)
- ssm文件导出____IE、chrom、Firefox文件中文乱码问题
- Win10 新建bat文件运行出现中文乱码怎么办?