| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- # copyright (c) 2024 PaddlePaddle Authors. All Rights Reserve.
- #
- # Licensed under the Apache License, Version 2.0 (the "License");
- # you may not use this file except in compliance with the License.
- # You may obtain a copy of the License at
- #
- # http://www.apache.org/licenses/LICENSE-2.0
- #
- # Unless required by applicable law or agreed to in writing, software
- # distributed under the License is distributed on an "AS IS" BASIS,
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- # See the License for the specific language governing permissions and
- # limitations under the License.
- from pathlib import Path
- from .base import BaseResult, CVResult
- class SealOCRResult(CVResult):
- """SealOCRResult"""
- def get_target_name(self, save_path):
- input_path = self["src_file_name"]
- if input_path.endswith(".pdf"):
- save_path = (
- Path(save_path)
- / f"{Path(input_path).stem}_pdf"
- / Path("page_{:04d}".format(self["page_id"] + 1))
- )
- else:
- save_path = Path(save_path) / f"{Path(input_path).stem}"
- return save_path
- def save_to_img(self, save_path):
- if not save_path.lower().endswith((".jpg", ".png")):
- save_path = self.get_target_name(save_path)
- else:
- save_path = Path(save_path).stem
- layout_save_path = f"{save_path}_layout.jpg"
- layout_result = self["layout_result"]
- layout_result.save_to_img(layout_save_path)
- seal_result = self["ocr_result"]
- seal_result.save_to_img(f"{save_path}_seal_ocr.jpg")
- def save_to_json(self, save_path):
- if not save_path.lower().endswith((".json")):
- save_path = self.get_target_name(save_path)
- else:
- save_path = Path(save_path).stem
- super().save_to_json(f"{save_path}_res.json")
|