2 Nền tảng và các cơng trình liên quan
2.30 Dự đoán xem object nằ mở anchor box nào
Các bước phát hiện vật thể với anchor boxes như sau:
• Với mỗi vật thể cần phát hiện sẽ đi kèm với một ground truth bounding box.
• Khởi tạo các anchor box với nhiều kích thước cũng như hình dạng khác nhau phủ đều trên từng pixel ảnh.
• Với mỗi anchor box, tính xem tỉ lệ diện tích phần chồng lắp trên diện tích gộp (hay tỉ lệ IOU) giữa anchor box với ground truth bouding box. • Nếu tỉ lệ IOU cao, thường trên 50%, mạng sẽ dự đốn có vật thể trong
• Nếu tỉ lệ IOU thấp, mạng sẽ dự đốn là khơng có vật thể trong anchor box này.
Hiện nay các mơ hình state-of-the-art cho việc nhận diện vật thể phần nhiều áp dụng kĩ thuật anchor box và được chia làm 2 bước như sau:
• Mơ hình nhận diện 2 bước: xây dựng đường ống phát hiện và phân loại, các giải thuật tiêu biểu là họ các mạng RCNN, ví dụ Faster RCNN. Như đã giải thích ở mạng CNN, ta sẽ có một vùng gọi là receptive field chứa các đặc trưng biểu diễn vật thể . Sử dụng bản đồ đặc trưng này hay gọi là feature map, ta sẽ áp dụng anchor box để từ đó đề xuất các bounding box tương ứng cho vật thể.
• Mơ hình nhận diện 1 bước: thực hiện song song nhận diện và phân loại. Các mạng tiêu biểu là YOLO, SSD. Thay vì sử dụng feature map thì mơ hình sử dụng đầu vào lả ảnh gốc và chia thành lưới, tại mỗi ô trên lưới dùng anchor box để tìm các bouding box tiềm năng và tính xác suất có vật thể tại ơ đó khơng. Sau đó gộp hôi quy các box lại để được một box tổng thể.
2.3 Các thách thức tiêu biểu
Qua khảo sát các phương pháp và hướng tiếp cận hiện có, nhóm xin đưa ra một vài khó khăn cản trở việc nghiên cứu được ứng dụng rộng rãi như sau.
Sai khác giữa các GUI element trong cùng một lớp
Một GUI element được phân lớp phụ thuộc vào chức năng của nó. Khi GUI element được biểu diễn thành giao diện, element đó sẽ được tùy chỉnh các thơng số như kích thước, màu sắc, vị trí, etc tùy thuộc vào mong muốn của người thiết kế. Giữa các GUI element thuộc 1 lớp có thể có nhiều biến thể khác nhau cho nên sẽ rất khó để có thể phát hiện và phân loại chính xác các GUI element.
Sự tương đồng giữa các GUI element khác lớp
Như đã nói ở trên thì các thuộc tính của một GUI element có thể được tùy chỉnh, vì vậy các GUI element thuộc các lớp khác nhau có thể có kích thước hay màu sắc giống nhau làm ảnh hưởng tới tính chính xác cho quá trình phát hiện và phân loại.
Xác định một element hay một tập các element
Một số GUI element có thể khá phức tạp, điển hình như ImageView là một vùng hiển thị ảnh. Nếu như background ảnh quá phức tạp ta có thể nhận diện được rất nhiều component bên trong ImageView nhưng thực chất tất cả vẫn chỉ là 1 bức ảnh. Vì vậy phải cân nhắc vấn đề này khi thực hiện bước phát hiện.
Khoảng cách giữa các GUI element với nhau
Một giao diện thường có rất nhiều GUI element và trong nhiều trường hợp các GUI element này nằm rất sát nhau. Lấy ví dụ như thanh menu gồm nhiều button nằm sát nhau, khi thực hiện phát hiện các element trong ảnh có khả năng vì các button nằm quá sát nên bộ phát hiện chỉ thấy có một element là cả thanh menu nhưng thực chất thanh menu lại có nhiều button. Cho nên đây là một thách thức trong quá trình xây dựng bộ phát hiện element trong giao diện.
Tính chính xác cao cho việc nhận diện
Đối với bài toán phát hiện vật thể, một chỉ số thường được sử dụng để đánh giá là IOU(Intersection Over Union, hình 2.31). Chỉ số này được tính dựa trên diện tích phần chồng lắp giữa 2 bounding box trên cho tổng diện tích phần hợp nhau. Trong bài tốn phát hiện vật thể, như đã nói ở trên, ta sẽ có sẵn những ground truth bounding box và sẽ học cách để đưa ra dự đốn bouding box. Bằng cách tính IOU giữa bouding box dự đốn và ground
truth bounding box, ta sẽ kiểm chứng được box mà ta dự đoán đúng là vật thể hay khơng.
Đối với việc dự đốn các vật thể đơn giản như chó, mèo, xe cộ, etc, thì ngưỡng IOU đặt ra để xác định xem việc dự đốn đúng hay khơng thường khá thấp, chỉ tầm 0,5. Tuy nhiên đối với bài toán phát hiện các thành phần GUI này, ngưỡng IOU có u cầu khá cao bởi vì việc xác định thiếu chính xác sẽ ảnh hưởng tới bước phân loại các thành phần GUI và đưa ra các GUI component có kích thước, vị trí sai lệch so với ảnh gốc