用 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文件转为list14 img_list = img.tolist()15 16 # 字典形式保存数组17 img_dict = {}18 img_dict[‘name‘] = IMAGE_NAME19 img_dict[‘content‘] = img_list20 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-829 import cv230 import numpy as np31 import json32 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 # 获取字典中内容,转为list43 img_list = img_dict[‘content‘]44 # list转numpy45 img = np.asarray(img_list)46 # 还原图片47 cv2.imwrite(IMAGE_NAME,img)
用 opencv和numpy进行图片和字符串互转,并保存至 json
原文地址:https://www.cnblogs.com/ansang/p/8137114.html