Py小郑 2023-04-24 13:47 采纳率: 96.6%
浏览 24
已结题

把图片转化为列表该怎么做

如图是数据集
想要把他转化为列表[[x1,y1],[x2,y2]...[xn,yn]]
n是对应的编号,x,y分别是对应的密度和含糖率

img

我已经尝试用PIL库做,但是尝试失败了,希望能得到一个思路

  • 写回答

1条回答 默认 最新

  • ash062 2023-04-24 15:48
    关注

    PIL + pytesseract,以及一些额外处理(虽然还是有一些问题

    from PIL import Image
    import pytesseract
    import pandas as pd
    
    data_ori = pytesseract.image_to_string(Image.open('data.png'))
    
    data_s = ''.join(i if (i.isdigit() or i == '.') else ' ' for i in data_ori)
    
    data_lst = [i for i in data_s.split() if '.' in i and i[0] != '.' and i[-1] != '.']
    
    data = [[float(data_lst[6 * i]), float(data_lst[6 * i + 1])] for i in range(10)] + [[float(data_lst[6 * i + 2]), float(data_lst[6 * i + 3])] for i in range(10)] + [[float(data_lst[6 * i + 4]), float(data_lst[6 * i + 5])] for i in range(10)]
    
    pd.DataFrame(data, columns = ['密度', '含糖率']).to_csv('ocr.csv', index = False)
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 5月2日
  • 已采纳回答 4月24日
  • 修改了问题 4月24日
  • 创建了问题 4月24日