# Hướng dẫn annotate toàn tập --- Lưu ý đọc kỹ trước khi sử dụng: - Chúng ta lấy những frame có text là scene text, không lấy graphic text - Lấy từ các loại như: - Biển báo giao thông - Biển báo hướng dẫn - Biển quảng cáo **Ví dụ**: https://drive.google.com/file/d/191_Rf6g3Gy4GjhcFD0bjR0Znl2KcS3ph/view?usp=sharing --- - **Bước 1:** Sử dụng account clone trên máy 156: `gnome/khanhmmlab` - **Bước 2:** Execute vào trong docker container với id là ```3c4c7759619c``` ```bash docker exec -it 3c4c7759619c bash ``` - **Bước 3:** - Bước 3.1: - Change dir to thư mục ```m_AnnoExs``` và chọn thư mục tương ứng với video_id trong sheet. - Tạo symbolic link với câu lệnh: Ví dụ với thư mục `C5bhAxfFuIc` ta thực hiện như sau: ```bash ln -s ../extract_frame_new/C5bhAxfFuIc imDir ``` - Bước 3.2: - Change dir tới thư mục `imDir` và thực hiện lệnh như sau: ```bash ls *.jpg > ids.txt ``` - Sau đó quay trở lại thư mục `m_AnnoExs` ```bash cd .. ``` - **Bước 4:** - Thiết lập database hay còn gọi là tạo file `anno.db` bằng cách vào link như sau: http://192.168.20.156:8080/cgi-bin/annotate.cgi?dir=imDir&id=3 - Tại màn hình sau khi truy cập vào link, chúng ta nhấn chọn hai button là `no` hoặc `maybe` để tạo file `anno.db`. ![](https://i.imgur.com/SmZnPyr.png) - Sau khi nhấn vào hai button nêu trên, ta đã tạo được file `anno.db` để lưu thông tin: ![](https://i.imgur.com/FKHcJlH.png) - **Bước 5:** Annotate ! (Đọc kỹ yêu cầu trước khi annotate để tránh sai sót) - Truy cập vào link sau để annotate: http://192.168.20.156:8080/cgi-bin/annotate_multi.cgi?dir=imDir&page=0 ![](https://i.imgur.com/9NsFcvA.png) - Tại đây các bạn duyệt qua tuần tự cho mình và chọn ra **10** frames trong 10 scene khác nhau (có nghĩa là 10 cảnh khác nhau) với các yêu cầu sau: 1) Frame cần chứa ít nhất **5 text instances** và phải **nhìn rõ được chữ (eligible)**. 2) Đối với nhiều frame cùng đạt yêu cầu trong một scene, ta chỉ cần chọn ra 1 frame cleanest nhất và annotate nó. - Cách để annotate như sau: - Nhấn một click vào ảnh được border màu đỏ tương ứng với frame đó có nhãn là **maybe** có nghĩa là frame đó chứa đủ số lượng text instance theo yêu cầu nhưng lại nhìn không rõ chữ. **Mình không tính vào trong 10 frames mình cần trích xuất ra nên không cần phải annotate chỗ này, phần này chỉ để note cho các bạn chú ý.** ![](https://i.imgur.com/pZYrYds.jpg) - Nhấn double click vào ảnh được border màu xanh tương ứng với frame đó có nhãn là **Yes**, có nghĩa là frame đó phù hợp với yêu cầu. ![](https://i.imgur.com/58zDUjX.jpg) - **Note:** Các bạn có thể thao tác với việc nhấn hai nút **Next** hoặc **Prev** để di chuyển qua lại giữa các trang. Hoặc bạn muốn nhảy cóc trang thì có thể sửa value của para **imDir** trên url. Ví dụ: ```bash http://192.168.20.156:8080/cgi-bin/annotate_multi.cgi?dir=imDir&page=300 ``` - *Page=300* có nghĩa là bạn đang ở page 300, ta chỉnh sửa con số ở đó nhảy đến page mong muốn. - **Bước 6:** sau khi hoàn tất, các bạn unlink phần symbolic link với lệnh `unlink imDir` và lặp lại bước 3 cho video kế tiếp.