CVHub520 / X-AnyLabeling

Effortless data labeling with AI support from Segment Anything and other awesome models.
GNU General Public License v3.0
4.26k stars 484 forks source link

Add new OCR features, such as re-running OCR on manually annotated local box areas. #687

Open Anleeno opened 1 month ago

Anleeno commented 1 month ago

Search before asking

Description

Re-running OCR on manually annotated local box areas.

Use case

No response

Additional

No response

Are you willing to submit a PR?

CVHub520 commented 1 month ago

@Anleeno-Xu, Thank you for your feature request. I'm glad to inform you that the functionality you're looking for is already available in the current version of the software. You can achieve this by making a simple configuration change:

Just take the file anylabeling/services/auto_labeling/ppocr_v4.py as example, locate line 232 and set the replace parameter to False. The line should look like this:

result = AutoLabelingResult(shapes, replace=False)

By setting replace=False, the model will re-run on the manually annotated local box areas without replacing existing annotations. This allows you to perform custom OCR specifically on the areas you've manually defined.

If you have any questions about implementing this change or if you encounter any issues, please don't hesitate to ask. We're here to help ensure you can make the most of this feature.

Anleeno commented 1 month ago

@CVHub520 Thanks. I have tried that, but it doesn't seem to be what I need. What I mean is running OCR on the localized annotation boxes, rather than the entire image, similar to PPOCRLabel. The existing functionality only saves our annotation results when running OCR.

CVHub520 commented 1 month ago

Hey @Anleeno-Xu!

Certainly, I understand your request. Currently, this feature is not supported in our product. However, we are considering incorporating it into future development plans to enhance the user experience and meet more specific needs. We appreciate your feedback and will keep you updated on any progress or changes related to this functionality.