Asked Apr 29th, 2020 10:38 AM 165 0 1
  • 165 0 1
+1

Annotate cho bài toán OCR

Share
  • 165 0 1

Các bác cho e hỏi với bài toán OCR thì các bác annotate cho data ntn vậy ạ.

Em có sẵn data rồi, form kiểu hóa đơn điện nước (image có WxH lớn) với nhiều format khác nhau. Level annotate thì e cx ko biết nên annotate theo word hay line :-? (Em thì nghĩ là line hay hơn vì sau đó sẽ có cả extract infor nữa)

Cả method hiện e cx đang nghĩ đến việc sử dụng 1 vài thằng DNN text spotter pretrain để gen ra rồi thuê ng correct lại. Đoạn chuẩn bị data này em cx chưa có nhiều kinh nghiệm lắm nên muốn xin ý kiến ạ.

1 ANSWERS


Answered May 4th, 2020 1:11 AM
+2

Thực tế mình làm cũng ưu tiên sentence level hơn là word level vì tùy dữ liệu đôi khi word level sinh ra nhiều nhập nhằng mà model detect khó đạt được độ chính xác kì vọng hơn là sentence level. Cái này quan điểm cá nhân thôi bạn có thể thử cái mình cho là hợp lý 😃) 😃)

Việc sử dụng pre-trained để giảm chi phí annotate, thay vì gán nhãn toàn bộ thì chỉ cần sửa, bổ sung, correct lại label cũng hợp lý rồi, mình không có ý kiến gì hơn. Hoặc lượng dữ liệu không quá nhiều thì bạn có thể gán nhãn toàn bộ thì chi phí bỏ ra cũng không chênh nhau mấy, mình thưởng để cho data entry làm hết luôn.

Share
No Naem @Naem
May 5th, 2020 1:29 AM

Vâng ạ, em cảm ơn anh

0
| Reply
Share
No Naem @Naem
May 5th, 2020 2:29 AM

Với kiểu có nhiều cells kiểu table thì bên a thường giải quyết ntn ạ, có cắt cells ra để đưa vào mô hình ko hay train cả ảnh luôn, vì bọn e cần cả extract thông tin, mà có nhiều loại format (khoảng vài nghìn format) nên cái table nó cx ko cố định và có nhiều loại (bọn e đang làm kiểu cắt cells của table để đưa vào mô hình, dùng thuần CV thôi nhưng cắt ra ko chính xác tuyệt đối lắm) còn để cả ảnh thì lúc extract infor ra sẽ rất khó (kể cả là NLP làm cx khó)

0
| Reply
Share
May 5th, 2020 2:44 AM

@Naem Ừ theo lý thuyết thì nếu cắt được các cells table ra trước rồi mới cho qua model thì kết quả sẽ tốt hơn nhưng anh cũng gặp vấn đề là sử dụng OpenCV không để cắt cells không đạt được độ chính xác cần thiết đặc biệt với ảnh chụp hơi nát. Anh vẫn cho cả ảnh vào để detect tất cả xong kết hợp với NLP và tọa độ tương quan giữa các box trên ảnh để extract đúng data nhưng trong task này, nếu làm tốt được phần xử lý đầu vào trước khi detect thì mới là tốt, anh cũng đang nghiên cứu giải pháp cho phần extract data này để hiệu quả hơn(cả về độ chính xác và thời gian xử lý). Có vẻ khó nhưng vui.

Mà bên em là bên nào nhỉ?

0
| Reply
Share
No Naem @Naem
May 5th, 2020 3:26 AM

@QuangPH khó mà a, e làm cho cty khác kp Sun* ạ, bọn e đang làm phần này đang đi theo hướng đó nhưng gặp khó khăn nên e hỏi chút ạ

Với cái tọa độ tương quan thì e nghĩ là oke, chắc chắn phải apply rồi nhưng h bọn e có khoảng 1000 format thì phần template matching cx khó phết, cả phần detect cắt cells e đang hướng thêm đến làm 1 con DNN nữa. Cái này khó vì lúc chạy thực trên product thì phần cells này nó ko chuẩn ảnh hưởng đến kết quả cuối cùng khá nhiều. E đang khá confuse với bài này.

0
| Reply
Share
May 5th, 2020 3:42 AM

@Naem template matching trước anh cũng apply vào project nhưng kết quả cho rất tệ(đối với form của bọn anh) nên thực tế anh đã không sử dụng template matching nữa (yaoming). Phần detect cắt cells thì cứ xử lý theo hướng đó đi, tập trung optimize phần detect này lên product thoải mái mà (anh làm thế, anh không dùng CV thuần đâu, DL đấy).

+1
| Reply
Share
No Naem @Naem
May 5th, 2020 4:03 AM

@QuangPH thank a, e cx đang thử kết hợp ạ.

0
| Reply
Share