首页 PaddleOCR 帖子详情
PaddleOCR GPU预测报错 ExternalError
收藏
快速回复
PaddleOCR 问答文本OCR 1246 2
PaddleOCR GPU预测报错 ExternalError
收藏
快速回复
PaddleOCR 问答文本OCR 1246 2

from paddleocr import PaddleOCR, draw_ocr
import cv2
import time

ocr = PaddleOCR(use_angle_cls=True) # need to run only once to download and load model into memory
img_path = './1111.jpg'
img = cv2.imread(img_path)

while True:
       result = ocr.ocr(img, cls=True)
       for line in result:
             print(line)

 

执行demo代码,执行一两次没问题,但是如果这里一直循环执行,很快就报错

Traceback (most recent call last):
File "E:/work/ocr_test/test/main2.py", line 13, in
result = ocr.ocr(img, cls=True)
File "D:\conda\envs\ocr\lib\site-packages\paddleocr\paddleocr.py", line 383, in ocr
dt_boxes, rec_res = self.__call__(img, cls)
File "D:\conda\envs\ocr\lib\site-packages\paddleocr\tools\infer\predict_system.py", line 89, in __call__
rec_res, elapse = self.text_recognizer(img_crop_list)
File "D:\conda\envs\ocr\lib\site-packages\paddleocr\tools\infer\predict_rec.py", line 360, in __call__
self.predictor.run()
OSError: In user code:

File "tools/export_model_dist.py", line 102, in
main()
File "tools/export_model_dist.py", line 87, in main
save_model(student, infer_shape, save_path, logger)
File "tools/export_model_dist.py", line 41, in save_model
paddle.jit.save(model, save_path)
File "", line 2, in save

File "/usr/local/lib/python3.7/site-packages/paddle/fluid/wrapped_decorator.py", line 25, in __impl__
return wrapped_func(*args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/base.py", line 39, in __impl__
return func(*args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/jit.py", line 681, in save
inner_input_spec)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/dygraph_to_static/program_translator.py", line 488, in concrete_program_specify_input_spec
*desired_input_spec)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/dygraph_to_static/program_translator.py", line 402, in get_concrete_program
concrete_program, partial_program_layer = self._program_cache[cache_key]
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/dygraph_to_static/program_translator.py", line 711, in __getitem__
self._caches[item] = self._build_once(item)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/dygraph_to_static/program_translator.py", line 702, in _build_once
class_instance=cache_key.class_instance)
File "", line 2, in from_func_spec

File "/usr/local/lib/python3.7/site-packages/paddle/fluid/wrapped_decorator.py", line 25, in __impl__
return wrapped_func(*args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/base.py", line 39, in __impl__
return func(*args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/dygraph_to_static/program_translator.py", line 652, in from_func_spec
outputs = static_func(*inputs)
File "/paddle/temp/tmp_cx6_gup.py", line 38, in forward
false_fn_2, (out_dict, x), (x,), (x,))
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/dygraph_to_static/convert_operators.py", line 210, in convert_ifelse
return _run_py_ifelse(pred, true_fn, false_fn, true_args, false_args)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/dygraph_to_static/convert_operators.py", line 235, in _run_py_ifelse
return true_fn(*true_args) if pred else false_fn(*false_args)
File "/paddle/code/gry/icode/baidu/personal-code/PaddleOCR/ppocr/modeling/architectures/base_model.py", line 81, in forward
x = self.neck(x)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 902, in __call__
outputs = self.forward(*inputs, **kwargs)
File "/paddle/temp/tmp69oc_vec.py", line 14, in forward
(x,), (x,))
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/dygraph_to_static/convert_operators.py", line 210, in convert_ifelse
return _run_py_ifelse(pred, true_fn, false_fn, true_args, false_args)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/dygraph_to_static/convert_operators.py", line 235, in _run_py_ifelse
return true_fn(*true_args) if pred else false_fn(*false_args)
File "/paddle/code/gry/icode/baidu/personal-code/PaddleOCR/ppocr/modeling/necks/rnn.py", line 92, in forward
x = self.encoder(x)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 902, in __call__
outputs = self.forward(*inputs, **kwargs)
File "/paddle/code/gry/icode/baidu/personal-code/PaddleOCR/ppocr/modeling/necks/rnn.py", line 45, in forward
x, _ = self.lstm(x)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layers.py", line 902, in __call__
outputs = self.forward(*inputs, **kwargs)
File "/usr/local/lib/python3.7/site-packages/paddle/nn/layer/rnn.py", line 1047, in forward
return self._cudnn_impl(inputs, initial_states, sequence_length)
File "/usr/local/lib/python3.7/site-packages/paddle/nn/layer/rnn.py", line 1024, in _cudnn_impl
type="rnn", inputs=inputs, outputs=outputs, attrs=attrs)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/dygraph/layer_object_helper.py", line 52, in append_op
stop_gradient=stop_gradient)
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/framework.py", line 3027, in append_op
attrs=kwargs.get("attrs", None))
File "/usr/local/lib/python3.7/site-packages/paddle/fluid/framework.py", line 2107, in __init__
for frame in traceback.extract_stack():

ExternalError: CUDNN error(4), CUDNN_STATUS_INTERNAL_ERROR.
[Hint: 'CUDNN_STATUS_INTERNAL_ERROR'. An internal cuDNN operation failed. ] (at ..\paddle/fluid/operators/rnn_op.cu.cc:621)
[operator < rnn > error]

0
收藏
回复
全部评论(2)
时间顺序
FutureSI
#2 回复于2022-04

确定paddle环境包括cuda cudnn都配置好了么

0
回复
时光匆匆啊啊啊
#3 回复于2022-05

我也是报这个错误,能识别一会,过一会才开始报错,请问你这边解决了吗

 

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