我使用k230读取图片并转码base64,速度太慢了,有什么解决方案吗??????

Viewed 309

import sys
from machine import UART
from machine import FPIOA
import time
import _thread
import base64
from binascii import a2b_base64, b2a_base64

print('开始')

file_path = '/data/img.jpg'
start_time = time.time() # 开始计时
with open(file_path, "rb") as f:
image_base64 = base64.b64encode(f.read())
print('image_base64:',image_base64)
print('打开与编码时间:', time.time() - start_time)
print('结束')

2 Answers

你好,可以降低图片分辨率来减少时间。其他的没太多方法,或者直接传输raw data.

raw data怎么输出??

你要输出到哪里?

我在做图片传输需要base64格式的数据

使用Base64传输,不仅传输数据量增加1/3, 并且嵌入式CPU普遍编码耗时高,ARM 亦是如此。
如果你的程序对性能要求很高,你需要改变传输方式,比如http中使用表单采用二进制进行传输。