吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1503|回复: 8
收起左侧

[求助] 各位大佬请问下,我现在要做识别整个文件夹内核酸检测截图信息存进Excel

[复制链接]
19980720 发表于 2022-10-24 11:29
各位大佬请问下,我现在要做识别整个文件夹内核酸检测截图信息存进Excel,现在只能识别一个图片存进去 ,加了循环也是一直识别第一个图片,请教下各位该怎么办
import cv2 as cv
import pytesseract as tess
from datetime import datetime
import xlwt
import glob
import os
import  re
file_path = "D:\\hesuantupian\\"  # 文件夹路径

images_path = glob.glob(os.path.join(file_path + '*.jpg'))  # 所有图片路径
print(images_path)
print(len([images_path.count("") for x in images_path]))

for image_path in images_path:
       # image_path
        image = cv.imread(image_path)

image = cv.imread(str(images_path[:1][0]))
image_rgb = cv.cvtColor(image, cv.COLOR_BGR2RGB)
text = tess.image_to_string(image_rgb, lang="chi_sim")

content = text.replace("\f", "").split("\n")
count=1
ss=[images_path.count("") for x in images_path]
# while count <= len([images_path.count("") for x in images_path]):
print(type(len(ss)))
ll=len(ss)
print(len(ss))

txt = []
for c in content:
    if len(c) > 0:
        print(c)
h, w, c = image.shape
boxes = tess.image_to_boxes(image)

for c in content:
    if len(c) > 0:
        txt.append(c)
for i in txt:
    if i[0] == '' and i[1] == '' and i[2] == '' and i[3] == '':
        ret = i
        break
    else:
        ret = False
# 拿到姓名
xingming = []
for c in content:
    if len(c) > 0:
        xingming.append(c)
for i in xingming:
    if i[0] == '' and i[1] == '':
        xing = i
        break
    else:
        xing = False
print(xing)  # 姓名
print(ret)
time = ret[10:]
ceshi = xing[10:]
# 拿到阴性阳性
yin = []

for c in content:
    if len(c) > 0:
        yin.append(c)
for i in yin:
    if i[0] == '' and i[1] == '' and i[2] == '' and i[3] == '':
        yinyin = i
        break
    else:
        yinyin = False
yina = yinyin[10:]
print(yina)
yinaa = yina.lstrip()
ok = yinaa[1:-1]
print('----------------')
print(ok)  # 阴性
# --------------
aaa = ceshi.lstrip()
print(aaa)  # 最终姓名
aa = [];
zuizhongshijian = time.lstrip()
print(time.lstrip())  # 最终时间
shijianaa = time.lstrip()

print(datetime.now())
date = datetime.strptime(time.lstrip(), '%Y-%m-%d %H:%M:%S')

delta = datetime.now() - date
print(delta.days)
santiannei = ""
if (delta.days <= 3):
    santiannei = '核酸报告在三天之内'
    print("核酸报告在三天之内")
else:
    santiannei = "核酸报告不在三天之内"
    print("核酸报告不在三天之内")
print(santiannei)
book = xlwt.Workbook(encoding='utf-8', style_compression=0)
sheet = book.add_sheet('zhaoceshi1', cell_overwrite_ok=True)
col = ('姓名', '阴性/阳性', '检测时间', '是否在72小时')
for i in range(0, 4):
    sheet.write(0, i, col)
datalist = [[aaa, ok, shijianaa, santiannei]]
for i in range(0, 1):
    data = datalist
    for j in range(0, 4):
        sheet.write(i + 1, j, data[j])

savepath = 'E:\pycharm\pythonproject\核酸检测练习\zhaoceshi1.xls'
book.save(savepath)

# for b in boxes.splitlines():
#     b = b.split(' ')
#     image = cv.rectangle(image, (int(b[1]), h - int(b[2])), (int(b[3]), h - int(b[4])), (0, 255, 0), 2)
cv.imshow('text detect', image)
cv.waitKey(0)
cv.destroyAllWindows()

免费评分

参与人数 3吾爱币 +3 热心值 +3 收起 理由
星星之夜 + 1 + 1 用心讨论,共获提升!
Listen + 1 + 1 用心讨论,共获提升!
Ajin1989 + 1 + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Ajin1989 发表于 2022-10-24 11:51
特征筛选
78054465 发表于 2022-10-24 12:17
flyingpig1234 发表于 2022-10-24 12:32
d8349565 发表于 2022-10-24 12:38
现在百度出了一个健康码OCR的 API
去注册一个使用看看
https://cloud.baidu.com/doc/OCR/s/Ol52hedan
d8349565 发表于 2022-10-24 12:41
我个人常用的文件夹下文件循环代码
[Python] 纯文本查看 复制代码
dir = r'data'
files = list(os.scandir(dir )
for file in files:
	to_do_something
xiao07230719 发表于 2022-10-24 15:07
成功了能不能分享一下 大佬 我也需要这种软件
YuanFang0w0 发表于 2022-10-24 15:21
你的for循环的缩进的问题吧,你应该把下面的代码块都缩进到循环里面,你只在循环里面遍历他的路径列表,赋值给路径,最后循环完肯定都是最后列表中最后一个元素,
lizy169 发表于 2022-10-24 17:45
d8349565 发表于 2022-10-24 12:41
我个人常用的文件夹下文件循环代码
[mw_shl_code=python,true]dir = r'data'
files = list(os.scandir(di ...

简洁明了,不错
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 07:38

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表