转至 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'
11 # 通过opencv读取图片
12 img = cv2.imread(IMAGE_NAME)
13 # numpy中ndarray文件转为list
14 img_list = img.tolist()
16 # 字典形式保存数组
17 img_dict = {}
18 img_dict['name'] = IMAGE_NAME
19 img_dict['content'] = img_list
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)
27 从 json 读取字符串,并转换成图片
28 # coding: utf-8
29 import cv2
30 import numpy as np
31 import json
33 # 要读取的JSON格式文件
34 JSON_NAME = 'opencv_temp.json'
35 # 还原为图片文件
36 IMAGE_NAME = 'restore.png'
38 # 读取文件为字典
39 with open(JSON_NAME, "rb") as json_file:
40 img_dict = json.load(json_file)
42 # 获取字典中内容,转为list
43 img_list = img_dict['content']
44 # list转numpy
45 img = np.asarray(img_list)
46 # 还原图片
47 cv2.imwrite(IMAGE_NAME,img)
java202304java学习笔记第六十二天-ssm-页面跳转-回显数据json格式字符串
java202304java学习笔记第六十二天-ssm-页面跳转-回显数据json格式字符串
js常见的循环方式以及数组和json字符串之间的转化
针对对象来说 ,任何对象都继承了Object对象,或者其它对象,继承的类的属性是默认不可遍历的, for... in循环遍历的时候会跳过,但是这个属性是可以更改为可以遍历的,那么就会造成遍历到不属于自身的属性。