码迷,mamicode.com
首页 > Web开发 > 详细

用 opencv和numpy进行图片和字符串互转,并保存至 json

时间:2017-12-28 19:45:38      阅读:617      评论:0      收藏:0      [点我收藏+]

标签:data   with   import   write   完全   rest   array   enc   image   

用 opencv和numpy进行图片和字符串互转,并保存至 json

技术分享图片

转至 https://zhuanlan.zhihu.com/p/27349847

受 用 base64 进行图片和字符串互转,并保存至 json 作者启发,试了试使用opencv来读取图片,然后用numpy转为list,再转为json格式。 发现完全可行。

图片转成列表,并保存至 json

我们将一张图片通过opencv来读取,转换为numpy的矩阵。再转为list,存入字典,转为json文件即可。

 

 1 # coding: utf-8
 2 # 导入相关库
 3 import cv2
 4 import numpy as np
 5 from json import dumps
 6 # 要编码的图片文件  
 7 IMAGE_NAME = 1.png
 8 # 保存为的json文件
 9 JSON_NAME = opencv_temp.json
10 
11 # 通过opencv读取图片
12 img = cv2.imread(IMAGE_NAME)
13 # numpy中ndarray文件转为list
14 img_list = img.tolist()
15 
16 # 字典形式保存数组
17 img_dict = {}
18 img_dict[name] = IMAGE_NAME
19 img_dict[content] = img_list
20 
21 # 保存为json格式
22 json_data = dumps(img_dict, indent=2)
23 # 将数据保存到文件
24 with open(JSON_NAME, w) as json_file:
25     json_file.write(json_data)
26 
27 从 json 读取字符串,并转换成图片
28 # coding: utf-8
29 import cv2
30 import numpy as np
31 import json
32 
33 # 要读取的JSON格式文件
34 JSON_NAME = opencv_temp.json
35 # 还原为图片文件
36 IMAGE_NAME = restore.png
37 
38 # 读取文件为字典
39 with open(JSON_NAME, "rb") as json_file:
40     img_dict = json.load(json_file)
41 
42 # 获取字典中内容,转为list
43 img_list = img_dict[content]
44 # list转numpy
45 img = np.asarray(img_list)
46 # 还原图片
47 cv2.imwrite(IMAGE_NAME,img)

 

用 opencv和numpy进行图片和字符串互转,并保存至 json

标签:data   with   import   write   完全   rest   array   enc   image   

原文地址:https://www.cnblogs.com/ansang/p/8137114.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!