Python OpenCV实现传统图片格式与base64转换
作者:CrossPython 时间:2021-07-20 21:42:21
Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,是一种基于64个可打印字符来表示二进制数据的方法。通过http传输图片常常将图片数据转换成base64之后再进行传输。
Base64简介
Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。可查看RFC2045~RFC2049,上面有MIME的详细规范。
Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。例如,在Java Persistence系统Hibernate中,就采用了Base64来将一个较长的唯一标识符(一般为128-bit的UUID)编码为一个字符串,用作HTTP表单和HTTP GET URL中的参数。在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式。此时,采用Base64编码具有不可读性,需要解码后才能阅读。
Python中将图片转base64
# -*- coding: utf-8 -*-
import base64
with open("/home/chaowei/1.png","rb") as f:
# b64encode是编码,b64decode是解码
base64_data = base64.b64encode(f.read())
# base64.b64decode(base64data)
print(base64_data)
在前端html中调用base64编码
<img src="data:image/jpg;base64,这里是base64的编码"/>
另外,有很多网站提供转换API,在线编码解码
base64转为图片
import os,base64
with open("C:\\Users\\wonai\\Desktop\\1.txt","r") as f:
#str = "iVBORw0KGgoAAAANSUhEUgAAANwAAAAoCAIAAAAaOwPZAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAQuSURBVHhe7ZptmoMgDIR7rh6o5+lpvEwP01XUGshAokgX+8z+7PKRTF6SoN7e/KMCnSlw68wemkMF3oSSEHSnAKHsLiQ0iFCSge4UIJTdhYQGEUoy0J0ChLK7kNAgQkkGulOAUHYXEhpEKMlAdwpcG8rhcRv/HkN3stIgW4F88DYoX89nObjmANuOc0eMXpHHcyX9+mowhgHKmdlChM0BZzvzet6DSSW7xjEWk8Hu+/O1x7zF1237/Uu4t/O46V6sZuARoZb9KqbO7On4rJlykqcYYnNAjSbx3Gmrj6WTzxirVlA+90F82G+nm4fX3zOxgqyKqRaUU7b8FpRDOeyjJa7k5oByT1yWse4mxfDC3NrrprnQtQeUMuUXoURmCGHdKfl/oTS8MElxu2mudO0BXUCZL8efVGU0EmsQjkGpM2H8y/CwGtW1C3el8ywxhHKWxgOlaPNj0VcRRW+OoiKvCXF0o6YeXWLQDaNQyMf1Clhsi22D9HUNXOBCVZamaBmiO5BxRdRQOt3M3oFUAD4/HDolSChx7AvXzRIJQtgsUfMu6HB+HglNLc5d5KiwpcAqTH7Idk/lvLD9Z0rUx4vYWL2UJ4WY6XbdL91ML57+EjsRNEMnw/LCrKklN9NNkbuLvKsdabjM/ZMByh+PDWuuw6kDEYXPzeSfzGARlNG1M1ENRCfGLlUuJ5MVTg+UyxGzC+1+KN/DkDyuTSVbqo7vNnagfKPTrH9b8pQtgQ/PRCifDTaUJaIWw8adUycklLrcppkyCZfkJ5cYlSZnQTkmsYf58OYAlMpg6JnlhYlC9uxhIdWvbr1NS8Ahc9pgQlkkai3fOorVUK4JGeYTJIgVTm+mnCqrmSfOgDJ0mOlOlhcmClk3M0KmPzeF0mnDGVB6LjqbmKB8p5GRQ34DStRCdpEpp5MRNWRNocwsjk9i7nyqugzPYTWUSZuqe0qVucAT5tgH9ITmxEdCdihjpcCVAgfI8uJ4pgx3K3UhgBeRQ9dtbJmjp1TnYmsKoSH1UGqKE23mxlrsri4yKsuAFnZ5BrAugypw0/IdSvHmxHJbEI6lREzj0asuOc7TR8BONdd9pNKCo4LRNY9CdgCEXjqObDhQvsFpy7z7DsqHP9khxp9DzNeKbSR+Iy3/n31tqVFYe17xFUZkTu507+4px4USFwBRm32lbzFyXphgRMtn3cwqqaef8a0UrMHlaJYM8RC1Iq2DeOXvKUdVjALmzromST8+4N+Egm9rrwzl/DpAVlddnE9su36Jyx6ECtkUxufaUMJOzfwQsxldUbnTLyO/ckCcNsS112yDmkkGF/4xKL8rHndrowChbKMrV61QgFBWiMepbRQglG105aoVChDKCvE4tY0ChLKNrly1QgFCWSEep7ZRgFC20ZWrVihAKCvE49Q2ChDKNrpy1QoF/gDXIhmWmc+CSAAAAABJRU5ErkJggg=="
imgdata = base64.b64decode(f.read())
file = open('1.jpg','wb')
file.write(imgdata)
file.close()
Python中将base64转为opencv的Mat格式
import cv2
import base64
imgData = base64.b64decode(base64_data)
nparr = np.fromstring(imgData, np.uint8)
img_np = cv2.imdecode(nparr, cv2.IMREAD_COLOR)
#cv2.imshow("test",img_np)
#cv2.waitKey(0)
Python中将opencv的Mat格式转为base64
import cv2
import base64
imgData = base64.b64decode(base64_data)
nparr = np.fromstring(imgData, np.uint8)
img_np = cv2.imdecode(nparr, cv2.IMREAD_COLOR)
image = cv2.imencode('.jpg', img_np)[1]
base64_data = str(base64.b64encode(image))[2:-1])
来源:https://www.cnblogs.com/pythonClub/p/10497994.html
标签:OpenCV,base64,转换
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
怎样修改 MySQL数据库中的密码
2008-11-27 15:35:00
浅谈解除装饰器作用(python3新增)
2022-05-30 03:31:52
Pytho常见的数据可视化库,小白必备
2022-08-04 15:21:13
![](https://img.aspxhome.com/file/2023/4/78834_0s.png)
python中的json总结
2022-03-07 15:51:30
python读取目录下所有的jpg文件,并显示第一张图片的示例
2023-06-21 16:31:58
django框架model orM使用字典作为参数,保存数据的方法分析
2021-03-11 00:18:30
Python实现自定义异常堆栈信息的示例代码
2021-10-29 14:27:47
![](https://img.aspxhome.com/file/2023/1/101221_0s.jpg)
浅谈python中str字符串和unicode对象字符串的拼接问题
2022-03-27 22:00:32
Python中typing模块的具体使用
2022-03-25 13:02:08
中秋阴天看不见月亮只好用python写赏月工具
2021-02-09 17:54:24
![](https://img.aspxhome.com/file/2023/3/96453_0s.gif)
ASP:使用ImageMagickObject组件制作缩略图
2008-10-21 12:21:00
Python使用Beautiful Soup实现解析网页
2022-11-21 19:17:22
MYSQL教程:保证安全的备份MYSQL数据库的方法
2010-03-03 17:12:00
WEB前端开发高性能优化之JavaScript优化细节
2009-06-10 14:38:00
教你怎么用Python监控愉客行车程
2021-10-22 17:59:37
![](https://img.aspxhome.com/file/2023/3/77753_0s.png)
python实现彩色图转换成灰度图
2022-03-11 02:41:30
![](https://img.aspxhome.com/file/2023/3/95373_0s.jpg)
python实现会员信息管理系统(List)
2021-12-21 04:50:45
![](https://img.aspxhome.com/file/2023/5/88965_0s.jpg)
php导出excel格式数据问题
2023-07-13 22:46:06
Python打工人必备之windows倒计时锁屏功能的实现
2021-01-18 04:21:21
Python cookbook(数据结构与算法)在字典中将键映射到多个值上的方法
2023-07-14 14:37:00