首页 Paddle框架 帖子详情
py代码打包问题
收藏
快速回复
Paddle框架 问答深度学习炼丹技巧 2555 11
py代码打包问题
收藏
快速回复
Paddle框架 问答深度学习炼丹技巧 2555 11

用pyinstaller打包代码后,提示no module named 'tools',在代码前面加了路径也不行,安装了tools之后还是提示没有这个模块,请教下这是python版本和pyinstaller的兼容性问题吗?

调试是用的pycharm下面创建的环境,py3.8。贴个图,这个是打包之后的运行结果。

这个是运行的代码前端,这段代码在py环境下可以正常运行并得到结果,但是打包之后就会提示No module name tools

0
收藏
回复
全部评论(11)
时间顺序
猪霸
#2 回复于2020-12

代码在这里

#import os
# model must content 'model' and 'params' files
from paddleocr import PaddleOCR, draw_ocr
import sys,os
base_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(base_path)

def str_ocr(Pic_Name):
    runpath = os.path.abspath(".")
    img_path = runpath + '/' + Pic_Name
    ocr = PaddleOCR(
        det_model_dir=runpath + "/det/",
        rec_model_dir=runpath + '/rec/',
        rec_char_dict_path=runpath + '/rec/dict.txt',
        cls=False,
        cls_image_shape='3, 48, 192',
        cls_model_dir=runpath + '/cls',
        cls_thresh=0.9,
        det=True,
        det_algorithm='DB',
        det_db_box_thresh=0.5,
        det_db_thresh=0.3,
        det_db_unclip_ratio=2.0,
        det_east_cover_thresh=0.1,
        det_east_nms_thresh=0.2,
        det_east_score_thresh=0.8,
        det_max_side_len=960,
        enable_mkldnn=False,
        gpu_mem=8000,
        image_dir=None,
        ir_optim=True,
        label_list=['0', '180'],
        lang='ch',
        max_text_length=25,
        rec=True,
        rec_algorithm='CRNN',
        rec_batch_num=30,
        rec_char_type='ch',
        rec_image_shape='3, 32, 320',
        use_angle_cls=True,
        use_gpu=False,
        use_pdserving=False,
        use_space_char=True,
        use_tensorrt=False,
        use_zero_copy_run=False,
    )
    # def myocr(img_path):
    result = ocr.ocr(img_path)
    print(result)
    # return result
    for line in result:
        print('识别结果:', line)
        print('X坐标为:', line[0][0])
        print('Y坐标为:', line[0][2])
        print('识别到的文字是:', line[1][0])
        print('准确度为:', line[1][1])
    return result


str_ocr("screen.bmp")

# 显示结果
# from PIL import Image
# image = Image.open(img_path).convert('RGB')
# im_show = draw_ocr(image, result, txts=None, scores=None, font_path='/path/to/PaddleOCR/doc/simfang.ttf')
# im_show = Image.fromarray(im_show)
# im_show.save('result.jpg')
0
回复
thinc
#3 回复于2020-12

首先你得确保你的Python解释器中有这个模块

0
回复
thinc
#4 回复于2020-12

你提供的代码没法运行,paddleocr是你自己的文件吧,方便的话把项目挂到AI Studio上试试

0
回复
thinc
#5 回复于2020-12

噢噢是打包之后的问题?是用什么命令打包的呢?

0
回复
net702
#6 回复于2020-12

 我用pyinstaller -F打包,这段代码在我的机子上可以运行,paddleocr是飞桨的文件,不是我自己定义的,在电脑里面下了paddleocr包就有。可是无论我是否指定了tools工具目录,也不管是python下面的还是paddleocr目录下面的tools,都提示没有那个模块,安装了之后就更不行了。

 

0
回复
P
PoisonSky
#7 回复于2021-02

大佬有解决办法吗?我也遇到这个问题了

0
回复
AIStudio810260
#8 回复于2021-02

是路径问题

0
回复
AIStudio810260
#9 回复于2021-02

paddleocr打包的话,坑挺多的,建议等官方的方案出来

0
回复
馒头飙魔
#10 回复于2021-06

我也遇到一模一样的问题。我尝试将Python下site-packages的tools文件夹复制过去dist里面,结果又报另外一个库找不到,我继续复制相应的库到dist里面——如此反复,结果最后还是不行——一运行就停止工作,然后即没有提示哪里出错了

0
回复
三岁
#11 回复于2021-07

如果是打包问题建议,使用qpt,可以参考一下文章:https://aistudio.baidu.com/aistudio/projectdetail/2128037

文章是1.0a7,现在是1.0a9在快速更新和迭代中

0
回复
s
scochi
#12 回复于2021-08

我也遇到同样的问题

0
回复
需求/bug反馈?一键提issue告诉我们
发现bug?如果您知道修复办法,欢迎提pr直接参与建设飞桨~
在@后输入用户全名并按空格结束,可艾特全站任一用户