📄 Awesome OCR multiple programing languages toolkits based on ONNX Runtime, OpenVINO, MNN, PaddlePaddle, TensorRT and PyTorch.
This report summarizes scanner evidence for RapidAI/RapidOCR, a Python project with 8,109 GitHub stars. SynthScan examined 23,839 lines of code across 137 source files, recording 278 pattern matches distributed across 13 syntactic categories. The legacy adjusted pattern signal is 14.8 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 162 finding(s).
Are imports declared and package/API names verified? 58 finding(s).
Are wrappers, guards, and repeated structures necessary? 162 finding(s).
Which changes need focused human review? 278 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 278 distinct pattern matches across 13 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/tools/validate_model_routes.py | 74 | def _validate_model_route_list(path: str, routes: Any) -> None: | CODE |
| LOW | python/tests/test_prepare_wheel_assets.py | 65 | def test_select_model_info_supports_default_model_specs( | CODE |
| LOW | python/tests/test_input.py | 137 | def test_input_memory_image_matches_bytes(engine): | CODE |
| LOW | python/tests/test_input.py | 154 | def test_input_memory_image_invalid_address_or_length(address, length): | CODE |
| LOW | python/tests/test_input.py | 161 | def test_input_memory_image_invalid_encoded_data(): | CODE |
| LOW | python/tests/test_input.py | 192 | def test_input_raw_memory_image(engine): | CODE |
| LOW | python/tests/test_input.py | 214 | def test_raw_memory_image_converts_to_bgr(pixel_format, source): | CODE |
| LOW | python/tests/test_input.py | 225 | def test_raw_memory_image_supports_gray_stride_and_bottom_up(): | CODE |
| LOW | python/tests/test_input.py | 248 | def test_raw_memory_image_rejects_invalid_metadata(kwargs, error): | CODE |
| LOW⚡ | python/tests/test_input.py | 277 | def test_invalid_init_parameters(params): | CODE |
| LOW⚡ | python/tests/test_input.py | 284 | def test_nested_init_parameters(): | CODE |
| LOW⚡ | python/tests/test_input.py | 291 | def test_input_three_ndim_two_channel(engine): | CODE |
| LOW⚡ | python/tests/test_input.py | 301 | def test_input_three_ndim_one_channel(engine): | CODE |
| LOW⚡ | python/tests/test_model_root_dir.py | 55 | def test_rec_dict_is_downloaded_into_model_root_dir(tmp_path, downloads, as_type): | CODE |
| LOW⚡ | python/tests/test_model_root_dir.py | 63 | def test_rec_dict_falls_back_to_package_models_dir(downloads): | CODE |
| LOW⚡ | python/tests/test_model_root_dir.py | 69 | def test_torch_model_path_accepts_str_model_root_dir(tmp_path, monkeypatch): | CODE |
| LOW | python/tests/test_det_preprocess.py | 31 | def test_det_preprocess_respects_limit_side_len( | CODE |
| LOW | python/tests/test_image_preprocessing.py | 13 | def test_preprocess_img_returns_original_when_disabled(monkeypatch): | CODE |
| LOW | python/tests/test_image_preprocessing.py | 29 | def test_detect_and_crop_skips_vertical_padding_when_disabled(monkeypatch): | CODE |
| LOW | python/tests/test_engine_config.py | 50 | def test_onnxruntime_provider_config_uses_cpu_by_default(monkeypatch): | CODE |
| LOW | python/tests/test_engine_config.py | 61 | def test_onnxruntime_provider_config_prefers_cuda_when_available(monkeypatch): | CODE |
| LOW | python/tests/test_engine_config.py | 76 | def test_onnxruntime_provider_config_falls_back_when_cuda_unavailable(monkeypatch): | CODE |
| LOW | python/tests/test_engine_config.py | 88 | def test_onnxruntime_provider_config_prefers_directml_on_windows(monkeypatch): | CODE |
| LOW | python/tests/test_engine_config.py | 104 | def test_onnxruntime_provider_config_skips_directml_on_non_windows(monkeypatch): | CODE |
| LOW | python/tests/test_engine_config.py | 116 | def test_onnxruntime_provider_config_adds_cann_when_available(monkeypatch): | CODE |
| LOW | python/tests/test_engine_config.py | 130 | def test_onnxruntime_provider_config_adds_coreml_on_darwin(monkeypatch): | CODE |
| LOW | python/tests/test_engine_config.py | 145 | def test_onnxruntime_provider_config_rejects_empty_session_providers(monkeypatch): | CODE |
| LOW | python/tests/test_engine_config.py | 157 | def test_openvino_cpu_config_omits_defaults(): | CODE |
| LOW | python/tests/test_engine_config.py | 171 | def test_openvino_cpu_config_maps_non_default_values(monkeypatch): | CODE |
| LOW | python/tests/test_engine_config.py | 194 | def test_openvino_cpu_config_ignores_invalid_thread_count(monkeypatch): | CODE |
| LOW | python/tests/test_default_config.py | 49 | def test_default_global_config(default_cfg): | CODE |
| LOW | python/tests/test_default_config.py | 65 | def test_default_onnxruntime_engine_config(default_cfg): | CODE |
| LOW | python/tests/test_default_config.py | 91 | def test_default_openvino_engine_config(default_cfg): | CODE |
| LOW | python/tests/test_default_config.py | 103 | def test_default_other_engine_configs(default_cfg): | CODE |
| LOW | python/tests/test_default_config.py | 227 | def test_default_cls_model_config(default_cfg): | CODE |
| LOW | python/tests/test_default_config.py | 239 | def test_default_engine_runtime_config(default_engine): | CODE |
| LOW | python/tests/test_default_config.py | 251 | def test_update_det_params_before_model_load(): | CODE |
| LOW | python/tests/test_default_config.py | 263 | def test_update_det_params_after_model_load(): | CODE |
| LOW | python/tests/test_default_config.py | 277 | def test_default_engine_real_full_pipeline(default_engine): | CODE |
| LOW | python/tests/test_default_config.py | 285 | def test_default_engine_real_rec_only(default_engine): | CODE |
| LOW | python/tests/test_tensorrt.py | 25 | def install_fake_tensorrt_modules(monkeypatch): | CODE |
| LOW | python/tests/test_tensorrt.py | 114 | def test_tensorrt_cache_dir_initializes_model_root_dir_for_build(monkeypatch, tmp_path): | CODE |
| LOW | python/tests/test_tensorrt.py | 142 | def test_tensorrt_default_cache_dir_uses_model_root_dir(monkeypatch, tmp_path): | CODE |
| LOW | python/tests/test_tensorrt.py | 173 | def test_tensorrt_model_aliases_share_cache_name(monkeypatch, tmp_path): | CODE |
| LOW | python/tests/test_tensorrt.py | 190 | def test_tensorrt_close_handles_partially_initialized_session(monkeypatch): | CODE |
| LOW | python/tests/test_tensorrt.py | 200 | def test_tensorrt_explicit_model_path_skips_download(monkeypatch, tmp_path): | CODE |
| LOW | python/tests/test_tensorrt.py | 234 | def test_tensorrt_loads_cached_engine_without_rebuild(monkeypatch, tmp_path): | CODE |
| LOW | python/tests/test_tensorrt.py | 261 | def test_tensorrt_force_rebuild_ignores_cached_engine(monkeypatch, tmp_path): | CODE |
| LOW | python/tests/test_tensorrt.py | 301 | def test_tensorrt_falls_back_to_rebuild_when_cached_engine_load_fails( | CODE |
| LOW | python/tests/test_tensorrt.py | 340 | def test_tensorrt_context_creation_failure_raises_tensorrt_error(monkeypatch, tmp_path): | CODE |
| LOW | python/tests/test_tensorrt.py | 372 | def test_tensorrt_get_dict_key_url_uses_fallback_engines(monkeypatch): | CODE |
| LOW | python/tests/test_return_word.py | 76 | def test_en_return_single_char_box(engine): | CODE |
| LOW | python/tests/test_rtl_dependency.py | 21 | def test_validate_rtl_dependency_reports_extra(monkeypatch): | CODE |
| LOW | python/tests/test_rtl_dependency.py | 35 | def test_reorder_bidi_for_display_uses_bidi_algorithm(monkeypatch): | CODE |
| LOW | python/tests/test_rtl_dependency.py | 46 | def test_arabic_dependency_is_checked_before_engine_initialization(monkeypatch): | CODE |
| LOW | python/tests/test_rtl_dependency.py | 69 | def test_arabic_enum_is_normalized_for_rtl_detection(): | CODE |
| LOW | python/tests/test_cli.py | 78 | def test_check_required_files_missing(monkeypatch, tmp_path): | CODE |
| LOW | python/tests/test_cli.py | 86 | def test_cli_check_validates_required_files_before_engine(monkeypatch): | CODE |
| LOW | python/tests/test_cli.py | 130 | def test_cli_lang_type_passed_to_engine(monkeypatch): | CODE |
| LOW | python/tests/test_cli.py | 147 | def test_cli_vis_empty_result(monkeypatch, tmp_path): | CODE |
| 25 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/rapidocr/__init__.py | 7 | CODE | |
| LOW | python/rapidocr/__init__.py | 7 | CODE | |
| LOW | python/rapidocr/__init__.py | 7 | CODE | |
| LOW | python/rapidocr/__init__.py | 7 | CODE | |
| LOW | python/rapidocr/__init__.py | 7 | CODE | |
| LOW | python/rapidocr/__init__.py | 7 | CODE | |
| LOW | python/rapidocr/__init__.py | 10 | CODE | |
| LOW | python/rapidocr/__init__.py | 11 | CODE | |
| LOW | python/rapidocr/__init__.py | 12 | CODE | |
| LOW | python/rapidocr/__init__.py | 13 | CODE | |
| LOW | python/rapidocr/ch_ppocr_rec/__init__.py | 4 | CODE | |
| LOW | python/rapidocr/ch_ppocr_rec/__init__.py | 5 | CODE | |
| LOW | python/rapidocr/ch_ppocr_rec/__init__.py | 5 | CODE | |
| LOW | python/rapidocr/cal_rec_boxes/__init__.py | 4 | CODE | |
| LOW | python/rapidocr/ch_ppocr_det/__init__.py | 4 | CODE | |
| LOW | python/rapidocr/ch_ppocr_det/__init__.py | 5 | CODE | |
| LOW | …thon/rapidocr/inference_engine/onnxruntime/__init__.py | 4 | CODE | |
| LOW | …thon/rapidocr/inference_engine/onnxruntime/__init__.py | 4 | CODE | |
| LOW | python/rapidocr/inference_engine/paddle/__init__.py | 4 | CODE | |
| LOW | python/rapidocr/inference_engine/paddle/__init__.py | 4 | CODE | |
| LOW | python/rapidocr/inference_engine/openvino/__init__.py | 4 | CODE | |
| LOW | python/rapidocr/inference_engine/openvino/__init__.py | 4 | CODE | |
| LOW | python/rapidocr/inference_engine/mnn/__init__.py | 4 | CODE | |
| LOW | python/rapidocr/inference_engine/mnn/__init__.py | 4 | CODE | |
| LOW | python/rapidocr/inference_engine/tensorrt/__init__.py | 4 | CODE | |
| LOW | python/rapidocr/inference_engine/tensorrt/__init__.py | 4 | CODE | |
| LOW | python/rapidocr/inference_engine/pytorch/__init__.py | 4 | CODE | |
| LOW | python/rapidocr/inference_engine/pytorch/__init__.py | 4 | CODE | |
| LOW | …erence_engine/pytorch/networks/heads/rec_multi_head.py | 6 | CODE | |
| LOW | …cr/inference_engine/pytorch/networks/heads/__init__.py | 21 | CODE | |
| LOW | …cr/inference_engine/pytorch/networks/heads/__init__.py | 22 | CODE | |
| LOW | …cr/inference_engine/pytorch/networks/heads/__init__.py | 22 | CODE | |
| LOW | …cr/inference_engine/pytorch/networks/heads/__init__.py | 25 | CODE | |
| LOW | …cr/inference_engine/pytorch/networks/heads/__init__.py | 26 | CODE | |
| LOW | …cr/inference_engine/pytorch/networks/transforms/stn.py | 5 | CODE | |
| LOW | …cr/inference_engine/pytorch/networks/transforms/stn.py | 6 | CODE | |
| LOW | …cr/inference_engine/pytorch/networks/transforms/stn.py | 7 | CODE | |
| LOW | …cr/inference_engine/pytorch/networks/transforms/tps.py | 1 | CODE | |
| LOW | …cr/inference_engine/pytorch/networks/transforms/tps.py | 2 | CODE | |
| LOW | …cr/inference_engine/pytorch/networks/transforms/tps.py | 3 | CODE | |
| LOW | …ference_engine/pytorch/networks/transforms/__init__.py | 19 | CODE | |
| LOW | …ference_engine/pytorch/networks/transforms/__init__.py | 20 | CODE | |
| LOW | …ference_engine/pytorch/networks/transforms/__init__.py | 21 | CODE | |
| LOW | …ference_engine/pytorch/networks/transforms/__init__.py | 22 | CODE | |
| LOW | …pytorch/networks/transforms/tps_spatial_transformer.py | 5 | CODE | |
| LOW | …pytorch/networks/transforms/tps_spatial_transformer.py | 6 | CODE | |
| LOW | …pytorch/networks/transforms/tps_spatial_transformer.py | 7 | CODE | |
| LOW | …nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py | 19 | CODE | |
| LOW | …nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py | 19 | CODE | |
| LOW | …nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py | 19 | CODE | |
| LOW | …rence_engine/pytorch/networks/backbones/rec_pplcnet.py | 27 | CODE | |
| LOW | …rence_engine/pytorch/networks/backbones/rec_pplcnet.py | 27 | CODE | |
| LOW | …rence_engine/pytorch/networks/backbones/rec_pplcnet.py | 27 | CODE | |
| LOW | …rence_engine/pytorch/networks/backbones/rec_lcnetv3.py | 15 | CODE | |
| LOW | …rence_engine/pytorch/networks/backbones/rec_lcnetv3.py | 15 | CODE | |
| LOW | …rence_engine/pytorch/networks/backbones/rec_lcnetv3.py | 15 | CODE | |
| LOW | python/rapidocr/ch_ppocr_cls/__init__.py | 4 | CODE | |
| LOW | python/rapidocr/ch_ppocr_cls/__init__.py | 5 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/tests/test_lazy_model_load.py | 49 | except Exception as exc: | CODE |
| MEDIUM | python/tests/test_lazy_model_load.py | 45 | def worker(): | CODE |
| LOW | python/rapidocr/utils/process_img.py | 145 | except Exception as exc: | CODE |
| LOW | python/rapidocr/utils/process_img.py | 175 | except Exception as exc: | CODE |
| LOW | python/rapidocr/utils/load_image.py | 96 | except Exception as e: | CODE |
| LOW | python/rapidocr/utils/load_image.py | 102 | except Exception as e: | CODE |
| LOW | python/rapidocr/utils/load_image.py | 119 | except Exception as e: | CODE |
| LOW | python/rapidocr/utils/utils.py | 104 | except Exception as e: | CODE |
| MEDIUM | python/rapidocr/utils/utils.py | 15 | def validate_rtl_dependency(): | CODE |
| LOW | python/rapidocr/ch_ppocr_det/utils.py | 107 | except Exception as exc: | CODE |
| LOW | python/rapidocr/inference_engine/onnxruntime/main.py | 99 | except Exception as e: | CODE |
| LOW | python/rapidocr/inference_engine/paddle/main.py | 92 | except Exception as e: | CODE |
| LOW | python/rapidocr/inference_engine/openvino/main.py | 72 | except Exception as e: | CODE |
| LOW | python/rapidocr/inference_engine/mnn/main.py | 78 | except Exception as e: | CODE |
| LOW⚡ | python/rapidocr/inference_engine/tensorrt/main.py | 70 | except Exception as e: | CODE |
| LOW⚡ | python/rapidocr/inference_engine/tensorrt/main.py | 77 | except Exception as e: | CODE |
| LOW⚡ | python/rapidocr/inference_engine/tensorrt/main.py | 84 | except Exception as e: | CODE |
| LOW⚡ | python/rapidocr/inference_engine/tensorrt/main.py | 87 | except Exception as e: | CODE |
| LOW⚡ | python/rapidocr/inference_engine/tensorrt/main.py | 129 | except Exception as e: | CODE |
| LOW | python/rapidocr/inference_engine/tensorrt/main.py | 189 | except Exception as e: | CODE |
| LOW | python/rapidocr/inference_engine/tensorrt/main.py | 283 | except Exception as e: | CODE |
| LOW | python/rapidocr/inference_engine/tensorrt/main.py | 386 | except Exception as e: | CODE |
| MEDIUM | python/rapidocr/inference_engine/tensorrt/main.py | 175 | def _get_max_profile_size(self) -> int: | CODE |
| LOW | …hon/rapidocr/inference_engine/tensorrt/memory_utils.py | 160 | except Exception: | CODE |
| LOW | …hon/rapidocr/inference_engine/tensorrt/memory_utils.py | 167 | except Exception: | CODE |
| LOW | …hon/rapidocr/inference_engine/tensorrt/memory_utils.py | 202 | except Exception: | CODE |
| LOW | …hon/rapidocr/inference_engine/tensorrt/memory_utils.py | 218 | except Exception: | CODE |
| LOW | …hon/rapidocr/inference_engine/tensorrt/memory_utils.py | 226 | except Exception: | CODE |
| LOW | …hon/rapidocr/inference_engine/tensorrt/memory_utils.py | 271 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …hon/rapidocr/inference_engine/tensorrt/memory_utils.py | 226 | except Exception: | CODE |
| HIGH | …hon/rapidocr/inference_engine/tensorrt/memory_utils.py | 202 | except Exception: | CODE |
| HIGH | …hon/rapidocr/inference_engine/tensorrt/memory_utils.py | 271 | except Exception: | CODE |
| HIGH | …hon/rapidocr/inference_engine/tensorrt/memory_utils.py | 160 | except Exception: | CODE |
| HIGH | …hon/rapidocr/inference_engine/tensorrt/memory_utils.py | 167 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/tests/__init__.py | 1 | # -*- encoding: utf-8 -*- | COMMENT |
| LOW | python/rapidocr/ch_ppocr_rec/main.py | 1 | # Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. | COMMENT |
| LOW | python/rapidocr/utils/__init__.py | 1 | # -*- encoding: utf-8 -*- | COMMENT |
| LOW | python/rapidocr/ch_ppocr_det/main.py | 1 | # Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. | COMMENT |
| LOW | python/rapidocr/inference_engine/__init__.py | 1 | # -*- encoding: utf-8 -*- | COMMENT |
| LOW | …rapidocr/inference_engine/pytorch/networks/__init__.py | 1 | # -*- encoding: utf-8 -*- | COMMENT |
| LOW | …cr/inference_engine/pytorch/networks/necks/__init__.py | 1 | # Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. | COMMENT |
| LOW | …ence_engine/pytorch/networks/architectures/__init__.py | 1 | # Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. | COMMENT |
| LOW | …cr/inference_engine/pytorch/networks/heads/__init__.py | 1 | # Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. | COMMENT |
| LOW | …ce_engine/pytorch/networks/heads/multiheadAttention.py | 81 | q = self._in_proj_q(query) | COMMENT |
| LOW | …r/inference_engine/pytorch/networks/transforms/tsrn.py | 1 | # copyright (c) 2020 PaddlePaddle Authors. All Rights Reserve. | COMMENT |
| LOW | …ference_engine/pytorch/networks/transforms/__init__.py | 1 | # Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. | COMMENT |
| LOW | …/inference_engine/pytorch/networks/transforms/tbsrn.py | 1 | # copyright (c) 2022 PaddlePaddle Authors. All Rights Reserve. | COMMENT |
| LOW | …rence_engine/pytorch/networks/backbones/rec_lcnetv4.py | 1 | # copyright (c) 2021 PaddlePaddle Authors. All Rights Reserve. | COMMENT |
| LOW | …nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py | 1 | # copyright (c) 2024 PaddlePaddle Authors. All Rights Reserve. | COMMENT |
| LOW | …nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py | 841 | # | COMMENT |
| LOW | …nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py | 861 | # N, C, _, _ = x.shape | COMMENT |
| LOW | …nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py | 881 | # | COMMENT |
| LOW | …nference_engine/pytorch/networks/backbones/__init__.py | 1 | # Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. | COMMENT |
| LOW | …rence_engine/pytorch/networks/backbones/rec_pplcnet.py | 1 | # copyright (c) 2021 PaddlePaddle Authors. All Rights Reserve. | COMMENT |
| LOW | …rence_engine/pytorch/networks/backbones/rec_lcnetv3.py | 1 | # copyright (c) 2021 PaddlePaddle Authors. All Rights Reserve. | COMMENT |
| LOW | …ce_engine/pytorch/networks/backbones/rec_donut_swin.py | 1 | # copyright (c) 2024 PaddlePaddle Authors. All Rights Reserve. | COMMENT |
| LOW | python/rapidocr/ch_ppocr_cls/utils.py | 1 | # Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. | COMMENT |
| LOW | python/rapidocr/ch_ppocr_cls/main.py | 1 | # Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …docr/inference_engine/pytorch/networks/necks/db_fpn.py | 460 | # ============================================================================ | COMMENT |
| MEDIUM | …docr/inference_engine/pytorch/networks/necks/db_fpn.py | 462 | # ============================================================================ | COMMENT |
| MEDIUM | …rence_engine/pytorch/networks/backbones/rec_lcnetv4.py | 22 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …rence_engine/pytorch/networks/backbones/rec_lcnetv4.py | 24 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …rence_engine/pytorch/networks/backbones/rec_lcnetv4.py | 166 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …rence_engine/pytorch/networks/backbones/rec_lcnetv4.py | 168 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …rence_engine/pytorch/networks/backbones/rec_lcnetv4.py | 534 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …rence_engine/pytorch/networks/backbones/rec_lcnetv4.py | 536 | # --------------------------------------------------------------------------- | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/rapidocr/main.py | 93 | CODE | |
| LOW | …apidocr/inference_engine/pytorch/networks/necks/rnn.py | 77 | CODE | |
| LOW | …apidocr/inference_engine/pytorch/networks/necks/rnn.py | 199 | CODE | |
| LOW | …ce_engine/pytorch/networks/heads/multiheadAttention.py | 147 | CODE | |
| LOW | …ce_engine/pytorch/networks/heads/multiheadAttention.py | 155 | CODE | |
| LOW | …ce_engine/pytorch/networks/heads/multiheadAttention.py | 163 | CODE | |
| LOW | …inference_engine/pytorch/networks/heads/det_db_head.py | 106 | CODE | |
| LOW | …ference_engine/pytorch/networks/heads/rec_nrtr_head.py | 34 | CODE | |
| LOW | …r/inference_engine/pytorch/networks/transforms/tsrn.py | 34 | CODE | |
| LOW | …/inference_engine/pytorch/networks/transforms/tbsrn.py | 140 | CODE | |
| LOW | …nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py | 69 | CODE | |
| LOW | …nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py | 1330 | CODE | |
| LOW | …rence_engine/pytorch/networks/backbones/rec_svtrnet.py | 20 | CODE | |
| LOW | …rence_engine/pytorch/networks/backbones/rec_svtrnet.py | 52 | CODE | |
| LOW | …rence_engine/pytorch/networks/backbones/rec_svtrnet.py | 130 | CODE | |
| LOW | …rence_engine/pytorch/networks/backbones/rec_svtrnet.py | 199 | CODE | |
| LOW | …rence_engine/pytorch/networks/backbones/rec_svtrnet.py | 404 | CODE | |
| LOW | …ce_engine/pytorch/networks/backbones/rec_donut_swin.py | 465 | CODE | |
| LOW | …ce_engine/pytorch/networks/backbones/rec_donut_swin.py | 46 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/tools/validate_model_routes.py | 18 | CODE | |
| LOW | python/tools/prepare_wheel_assets.py | 146 | CODE | |
| LOW | python/tools/prepare_wheel_assets.py | 296 | CODE | |
| LOW | python/tests/test_model_resolver.py | 20 | CODE | |
| LOW | …n/rapidocr/inference_engine/tensorrt/engine_builder.py | 87 | CODE | |
| LOW | …hon/rapidocr/inference_engine/tensorrt/memory_utils.py | 171 | CODE | |
| LOW | …n/rapidocr/inference_engine/pytorch/networks/common.py | 51 | CODE | |
| LOW | …docr/inference_engine/pytorch/networks/necks/db_fpn.py | 480 | CODE | |
| LOW | …apidocr/inference_engine/pytorch/networks/necks/rnn.py | 139 | CODE | |
| LOW | …ce_engine/pytorch/networks/architectures/base_model.py | 66 | CODE | |
| LOW | …erence_engine/pytorch/networks/heads/rec_multi_head.py | 24 | CODE | |
| LOW | …nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py | 737 | CODE | |
| LOW | …nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py | 775 | CODE | |
| LOW | …nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py | 565 | CODE | |
| LOW | …nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py | 1425 | CODE | |
| LOW | …rence_engine/pytorch/networks/backbones/rec_svtrnet.py | 573 | CODE | |
| LOW | …ference_engine/pytorch/networks/backbones/rec_hgnet.py | 227 | CODE | |
| LOW | …rence_engine/pytorch/networks/backbones/rec_lcnetv3.py | 243 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/rapidocr/__init__.py | 34 | __all__ = [ | CODE |
| LOW | python/rapidocr/ch_ppocr_rec/__init__.py | 7 | __all__ = ["TextRecognizer", "TextRecInput", "TextRecOutput"] | CODE |
| LOW | python/rapidocr/cal_rec_boxes/__init__.py | 6 | __all__ = ["CalRecBoxes"] | CODE |
| LOW | python/rapidocr/ch_ppocr_det/__init__.py | 7 | __all__ = ["TextDetector", "TextDetOutput"] | CODE |
| LOW | …thon/rapidocr/inference_engine/onnxruntime/__init__.py | 6 | __all__ = ["ONNXRuntimeError", "OrtInferSession"] | CODE |
| LOW | python/rapidocr/inference_engine/paddle/__init__.py | 6 | __all__ = ["PaddleInferError", "PaddleInferSession"] | CODE |
| LOW | python/rapidocr/inference_engine/openvino/__init__.py | 6 | __all__ = ["OpenVINOError", "OpenVINOInferSession"] | CODE |
| LOW | python/rapidocr/inference_engine/mnn/__init__.py | 6 | __all__ = ["MNNError", "MNNInferSession"] | CODE |
| LOW | python/rapidocr/inference_engine/tensorrt/__init__.py | 6 | __all__ = ["TensorRTError", "TRTInferSession"] | CODE |
| LOW | python/rapidocr/inference_engine/pytorch/__init__.py | 6 | __all__ = ["TorchInferError", "TorchInferSession"] | CODE |
| LOW | …cr/inference_engine/pytorch/networks/necks/__init__.py | 15 | __all__ = ["build_neck"] | CODE |
| LOW | …ence_engine/pytorch/networks/architectures/__init__.py | 17 | __all__ = ["build_model"] | CODE |
| LOW | …cr/inference_engine/pytorch/networks/heads/__init__.py | 15 | __all__ = ["build_head"] | CODE |
| LOW | …ference_engine/pytorch/networks/transforms/__init__.py | 15 | __all__ = ["build_transform"] | CODE |
| LOW | …nference_engine/pytorch/networks/backbones/__init__.py | 15 | __all__ = ["build_backbone"] | CODE |
| LOW | python/rapidocr/ch_ppocr_cls/__init__.py | 7 | __all__ = ["TextClassifier", "TextClsOutput"] | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | python/rapidocr/inference_engine/tensorrt/main.py | 94 | Run inference on input data. This method executes the TensorRT engine on the provided input. It uses pr | STRING |
| HIGH | …hon/rapidocr/inference_engine/tensorrt/memory_utils.py | 57 | Allocate host and device buffers for TensorRT inference. This function allocates memory buffers for all input and o | STRING |
| HIGH | …nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py | 570 | use 'handle_func' to modify the sub-layer(s) specified by 'layer_name_pattern'. Args: layer_name_pa | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | python/rapidocr/ch_ppocr_det/main.py | 81 | # Step 1: Stable sort by y (top to bottom) | COMMENT |
| LOW⚡ | python/rapidocr/ch_ppocr_det/main.py | 87 | # Step 2: Assign line IDs based on adjacent y differences | COMMENT |
| LOW⚡ | python/rapidocr/inference_engine/tensorrt/main.py | 115 | # Step 1: Set input shape for dynamic dimensions | COMMENT |
| LOW⚡ | python/rapidocr/inference_engine/tensorrt/main.py | 118 | # Step 2: Copy input data to GPU | COMMENT |
| LOW⚡ | python/rapidocr/inference_engine/tensorrt/main.py | 121 | # Step 3: Execute inference | COMMENT |
| LOW⚡ | python/rapidocr/inference_engine/tensorrt/main.py | 124 | # Step 4: Copy output back to CPU | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | python/rapidocr/ch_ppocr_det/main.py | 81 | # Step 1: Stable sort by y (top to bottom) | COMMENT |
| LOW⚡ | python/rapidocr/ch_ppocr_det/main.py | 87 | # Step 2: Assign line IDs based on adjacent y differences | COMMENT |
| LOW⚡ | python/rapidocr/inference_engine/tensorrt/main.py | 115 | # Step 1: Set input shape for dynamic dimensions | COMMENT |
| LOW⚡ | python/rapidocr/inference_engine/tensorrt/main.py | 118 | # Step 2: Copy input data to GPU | COMMENT |
| LOW⚡ | python/rapidocr/inference_engine/tensorrt/main.py | 121 | # Step 3: Execute inference | COMMENT |
| LOW⚡ | python/rapidocr/inference_engine/tensorrt/main.py | 124 | # Step 4: Copy output back to CPU | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …ce_engine/pytorch/networks/architectures/base_model.py | 23 | # if you make model differently, you can use transfrom in det and cls | COMMENT |