Có rất nhiều ứng dụng của việc áp dụng thông tin kết cấu trong một hệ thống thị giác máy tính. Trong đó nhiều các kỹ thuật khác nhau đƣợc sử dụng cho việc phát hiện đối tƣợng. Một trong những khác nhau cơ bản trong các hệ thống phát hiện đối tƣợng là việc xác định và cách thức biểu diễn đặc trƣng kết cấu nhƣ đã nêu trong phần 1.2. Đa phần việc sử dụng thông tin về màu sắc là cơ bản của tất cả các hệ thống. Các biểu diễn thông tin về hình dạng và kết cấu thƣờng đƣợc sử dụng để làm tăng thêm độ chính xác của hệ thống. Tuy nhiên trong nhiều trƣờng hợp thông tin màu sắc là không có hoặc chỉ sử dụng đƣợc rất ít, thông tin về hình dạng lại càng không tỏ ra hữu dụng. Các ứng dụng kiểm tra, điều khiển chất lƣợng sản phẩm công nghiệp nhƣ vải sợi hay phân loại các sản phẩm linh kiện điện tử là một trong số các ví dụ phải bắt buộc sử dụng thông tin về kết cấu. Để cụ thể hóa việc sử dụng thông tin về kết cấu nhƣ thế nào trong trong một hệ thống phát hiện đối tƣợng.
Luận văn này sẽ áp dụng các kỹ thuật mô tả, phân loại kết cấu đã trình bày ở trên để giải quyết vấn đề kiểm tra chất lƣợng sản phẩm vải sợi trong một dây chuyền công nghiệp. Với đầu vào là một chuỗi các ảnh đƣợc chụp trực tiếp sản phẩm vải sợi trên dây chuyền công nghiệp, với điều kiện trong phòng xƣởng, độ sáng tƣơng đối ổn định và cự ly của camera là không thay đổi. Hệ thống phát hiện đối tƣợng phải xác định hay phát hiện đƣợc các mảnh lỗi trên dây chuyền, các lỗi có thể là sản phẩm không cùng thể loại do bị lẫn trong quá trình sản xuất, vết bẩn hay mảng bám dính trên bề mặt vải sợi, lỗi do chính chất lƣợng của vải sợi…và loại ra đƣợc các sản phẩm không đạt yêu cầu về chất lƣợng sản phẩm. Hình 3.1 là một minh họa kết quả phát hiện lỗi trên bề mặt vải sợi đƣợc thực hiện trên hệ thống điều khiển chất lƣợng công nghiệp [22].
Hình 3.1: Lỗi trên bề mặt vải sợi 3.2 Phân tích bài toán.
Yêu cầu cơ bản nhất của một hệ thống phát hiện đối tƣợng là các xử lý bên trong của ứng dụng phải đủ nhanh để đáp ứng yêu cầu về thời gian thực [11]. Vì thế, đối với các thành phần của hệ thống phải có sự tối ƣu nhất định về mặt tốc độ. Về cơ bản, để thực hiện đƣợc sự tối ƣu đó, các thành phần trong hệ thống nhƣ đã nêu trong phần 1.2 phải lần lƣợt đựoc tối ƣu hóa. Tức là việc tối ƣu hóa tốc độ chia làm ba khối chính. Đó là việc tối ƣu về việc trích chọn các đặc trƣng, tối ƣu về tập đặc trƣng biểu diễn, và tối ƣu về phƣơng pháp phân loại. Các biểu diễn đặc trƣng phải đủ tốt để thực hiện nhanh. Số chiều của vector đặc trƣng sinh ra phải đủ nhỏ (thông thƣờng sẽ thêm một bƣớc giảm số chiều cho không gian đặc trƣng). Thêm vào đó các đặc trƣng biểu diễn kết cấu phải có thể nhận dạng đƣợc các đối tƣợng kết cấu khi có các ảnh hƣởng của thao tác ảnh nhƣ quay ảnh, co giãn ảnh, và thay đổi tỷ lệ xám của ảnh. Sơ đồ tổng quát của hệ thống phát hiện lỗi bề mặt vải sợi đƣợc xem xét nhƣ sau:
Hình 3.2: Sơ đồ hệ thống phát hiện lỗi bề mặt vải sợi
Trong khuôn khổ của luận văn này, chúng tôi sẽ xây dựng một ứng dụng điều khiển chất lƣợng của vải sợi theo sơ đồ nhƣ đã nêu trên để minh họa phƣơng pháp biểu diễn kết cấu LBP nhƣ đã nêu trong mục 2.1.2. Một số chức năng trung gian phức tạp sẽ đƣợc bỏ qua để đơn giản hóa quá trình lập trình cũng nhƣ minh họa tính chất của kết cấu. Trong chƣơng trình ứng dụng này chúng tôi giả sử rằng đối tƣợng cần phát hiện là các khung hình (Frames) của mẫu vải sợi. Nhiệm vụ
Các ảnh đƣợc nhận online Các ảnh cần phát hiện lỗi Các ảnh mẫu đƣợc huấn luyện trƣớc Trích chọn các đặc trƣng nhanh Tối ƣu tập các đặc trƣng
Phân loại dựa vào đặc trƣng Đối tƣợng đƣợc phát hiện Điều khiển chất lƣợng sản phẩm Ngƣời sử dụng
của chƣơng trình là phát hiện ra các khung hình có kết cấu lỗi, tức là khác với kết cấu của khung hình mẫu. Để cho đơn giản toàn bộ kết cấu của vải sợi sẽ đƣợc đặt vào mỗi khung hình. Với sự giả sử này ta có thể bỏ qua đƣợc các bƣớc phân đoạn ảnh để xác định vùng có kết cấu cần thiết. Với các yêu cầu về biểu diễn kết cấu thích nghi với các thao tác quay ảnh, co giãn ảnh và thay đổi tỷ lệ xám cũng sẽ đƣợc giảm nhẹ với giả sử rằng điều kiện trong phòng xƣởng có độ sáng tƣơng đối ổn định, các mẫu có kết cấu đều nhau và đối tuợng phát hiện là các khung hình có cùng kích cỡ. Do không có thể trang bị thiết bị để thu hình của các khung trực tiếp từ ứng dụng, đầu vào của chƣơng trình là các file video theo định dạng phổ biến của hệ điều hành Windows (*.avi). Phần dƣới đây sẽ làm rõ thêm về phƣơng pháp biểu diễn kết cấu lựa chọn cũng nhƣ phƣơng pháp phân loại để xác định các lớp khung hình cho phát hiện đối tƣợng.
3.2.1 Xây dựng phƣơng pháp biểu diễn kết cấu
Nhƣ đã nêu từ trƣớc với yêu cầu trích chọn vector đặc trƣng nhanh và có số chiều đủ nhỏ để có thể xử lý theo yêu cầu thời gian thực. Theo các tài liệu [1,11] thì phƣơng pháp biểu diễn kết cấu bằng toán tử LBP thích hợp với các xử lý tốc độ cao do tính đơn giản của nó. Một lý do nữa cho việc chọn đặc trƣng kết cấu này để phát triển ứng dụng là do kết cấu vải sợi thƣờng là các kết cấu nhỏ thích hợp cho biểu diễn LBP với bán kính nhỏ (ví dụ LBP8,1). Một số biểu diễn kết cấu cải tiến của LBP truyền thống nhƣ khắc phục ảnh hƣởng quay ảnh, khắc phục vấn đề kết cấu nhiều tỉ lệ (co giãn ảnh), sự thay đổi tỷ lệ xám,... cũng đảm bảo tính đơn giản cho việc xử lý bằng máy tính. Vector đặc trƣng sau khi sử dụng LBP truyền thống sẽ là một vector 256 chiều với mỗi giá trị mức xám là một thống kê số lƣợng LBP của các điểm (theo nhƣ 2.1.2). Với việc chọn một số mẫu LBP uniform điển hình cũng sẽ làm giảm số chiều của vector kết cấu. Dƣới đây sẽ trình bày một số phƣơng pháp cải tiến của LBP để khắc phục các ảnh hƣởng cơ bản trong hệ thống phát hiện đối tƣợng [1,3,11]. Ta sẽ áp dụng các cải tiến này để xây dựng các module chƣơng trình cải tiến cho ứng dụng.
Khắc phục ảnh hƣởng quay ảnh.
Do mỗi LBP đƣợc tính dựa trên các điểm lân cận nằm trên một đƣờng tròn nào đó, ngƣời ta có thể dễ dàng sử dụng tính chất này của LBP để khắc phục ảnh hƣởng của các thao tác quay ảnh tới độ chính xác của các đặc trƣng kết cấu cục bộ. Không thay đổi đối với thao tác quay ảnh ở đây loại trừ các khả năng kết cấu có thay đổi do sự thay đổi về vị trí tƣơng đối của nguồn sáng và đối tƣợng đích. Thêm vào đó khả năng kết cấu bị thay đổi do ảnh hƣởng con ngƣời qua ảnh hƣởng số hóa cũng bị loại trừ. Với các giả thiết nhƣ trên trong các tài liệu [3,11,12] đã dẫn xuất một LBP khắc phục ảnh hƣởng của các thao tác quay ảnh khá hiệu quả cho phân tích kết cấu. Khi một ảnh đƣợc quay, các giá trị gp(p=0,…,P-1) quay xung quanh một đƣờng tròn bán kính R. Trong khi các tính toán của LBP, chỉ số của các gp đƣợc tính theo ngƣợc chiều kim đồng hồ, bắt đầu tại hƣớng nguyên dƣơng của trục X. Nhƣ vậy với các thao tác quay ảnh khác nhau thì với cùng một điểm gc kỹ thuật LBP sẽ tạo ra các mã LBP khác nhau. Loại trừ các mã có giá trị đặc biệt nhƣ các mã chỉ toàn có các giá trị là 0 hoặc 1 là giữ nguyên các giá trị đối với mọi góc quay. Để loại bỏ ảnh hƣởng của các thao tác quay, các giá trị LBP phải đƣợc quay lại cùng một vị trí tham chiếu nhằm giữ nguyên đƣợc giá trị của mã LBP. Quy tắc chuyển đƣợc định nghĩa một cách toán học nhƣ sau:
Trong đó LBPri
P,R là ký hiệu cho LBP cải tiến không thay đổi với thao tác quay ảnh (ri – Rotation Invariant). Hàm ROR(x,i) là hàm dịch sang phải i bit (|i| < P) của một số x (biểu diễn bằng P bit nhị phân). Với một số x dƣới dạng nhị phân:
Khi đó ROR đƣợc định nghĩa nhƣ là:
Nói một cách đơn giản, mã LBP không ảnh hƣởng bởi thao tác quay ảnh LBPriP,R đƣợc tính bằng cách dịch phải (quay tròn) giá trị mã LBP gốc đến khi nhận đƣợc giá trị bé nhất của các mã quay. Hĩnh vẽ dƣới đây minh họa 6 mã không bị thay đổi bởi thao tác quay ảnh (hàng đầu) và các mã mà các thao tác quay ảnh tạo ra cùng một mã LBPri
P,Rcủa chúng (hàng dƣới). Hai mã đầu là đặc biệt và không bị ảnh hƣởng bởi thao tác quay ảnh, cũng nhƣ không một mã quay ảnh LBPri
P,R nảo có thể có giá trị trùng lặp đƣợc. Mã thứ ba cũng là một trƣờng hợp đặc biệt do bởi tính đối xứng của nó, chỉ có thể có 2 mã mới đƣợc tạo khi quay. Ba mã còn lại có đến 7 mã mới đƣợc tạo khi quay (tƣơng ứng ở hàng dƣới)
Hình 3.3: Minh họa các với mã LBPri 8,1
Tổng cộng có tất cả 36 mã cho LBP không bị ảnh hƣởng bởi thao tác quay ảnh. Do đó LBPri
P,R tạo ra tất cả 36 bin cho lƣợc đồ kết cấu. Việc xác định số mã không bị ảnh hƣởng quay cho một số x với số bit bất kỳ không phải là nhiệm vụ dễ dàng. Các giải thuật để giải quyết vấn đề này đƣợc đánh giá có độ phức tạp O(N2) với N là số bit, tham khảo trong tài liệu [1]. Một vấn đề quan trọng để khắc phục nhƣợc điểm này, ngƣời ta phải tìm cách khắc phục bằng cách giảm số
các mẫu cần xử lý. Hơn nữa, trong thực tế các ảnh đƣợc quay với góc 45 độ, cơ sở cho chọn LBPri
8,R với 36 mã không ảnh hƣởng quay là tƣơng đối hiếm. Trong [10] giới thiệu thuật ngữ các mẫu “uniform” là cơ sở cho các thuật toán về xác định các mã không thay đổi bởi ảnh hƣởng quay. Dựa trên quan sát rằng có một số mẫu LBP nào đó là đủ để thể hiện tính chất cơ bản của kết cấu. Những mẫu này gọi là “uniform” vì chúng có tính chất cơ bản chung nhất là hầu hết chuyển dịch trong mã nhị phân của chúng phải là từ 0 sang 1 hoặc từ 1 về 0 (hình vẽ), các mẫu này phải biẻu diễn tính chất cơ bản của kết cấu mã chúng thể hiện. Ví dụ các mẫu thứ 3 và thứ 5 trong mã LBPri
8,1 (hình ) là các biểu diễn của mẫu non- uniform.
Hình 3.4: Các mẫu uniform
Để xác định một mẫu LBP nhƣ thế nào là uniform ngƣời ta định nghĩa các công thức để đo độ uniform nhƣ sau:
Các mẫu LBP với U(Gp) nhỏ hơn hoặc bằng 2 đƣợc xem nhƣ là uniform.
Với một số nhị phân P bit, giá trị U đƣợc tính nhƣ sau:
Tổng số các mẫu mà U(Gp) nhỏ hơn hoặc bằng 2 đƣợc tính chính xác là P(P-1)+2. Khi số các mẫu LBP này đƣợc quay để lấy giá trị nhỏ nhất của chúng cho khắc phục ảnh hƣởng quay thì các mẫu này giảm xuống còn P+1. Các mã
uniform bây giờ đƣợc tính làm đầu vào cho cải tiến khắc phục ảnh hƣởng quay ảnh dễ dàng bởi công thức:
Đây là công thức hay đƣợc dùng để tính các LBP khắc phục ảnh hƣởng của việc quay ảnh. Đối với các ảnh đƣợc quay với các góc khác 45 độ của mẫu LBPri8,R nhƣ đã nêu ngƣời ta có thể khắc phục bằng cách tăng số điểm lân cận P. Tuy nhiên việc tăng có thể dẫn tới việc tăng đáng kể số bin 2p . Việc chọn P phù hợp là một vấn đề vẫn đang đƣợc đánh giá dựa vào kinh nghiệm.
Khắc phục không thay đổi bởi tỷ lệ xám.
Nhƣ đã đề cập từ định nghĩa của kết cấu, thuộc tính về độ tƣơng phản là một trong những thành phần chính của thông tin kết cấu. Các công thức cho độ tƣơng phản của kết cấu thể hiện rõ trong các biểu diễn kết cấu khác nhƣ biểu diễn kết cấu của Tamura. Xuất phát từ định nghĩa của LBP, các mẫu LBP đƣợc tính mà bỏ qua sự quan trọng của vấn đề sai khác của các mức xám trong ảnh. Tất cả các mẫu LBP đều đƣợc đặt ngƣỡng và nhị phân hóa để đơn giản cho xử lý. Trong nhiều ứng dụng đặc biệt là các ứng dụng kiểm tra chất lƣợng sản phẩm công nghiệp thì độ sáng đƣợc điều khiển một cách rất chính xác. Hay nói cách khác thông tin về độ tƣơng phản hay chính là sự thay đổi về tỷ lệ xám là rất hữu ích. Các toán tử mà độc lập với tỷ lệ xám nhƣ LBP trong trƣờng hợp này lại tỏ ra lãng phí các thông tin cần thiết. Trong các trƣờng hợp nhƣ vậy việc thêm các thông tin về các điều khiển phụ thuộc tỷ lệ xám sẽ bổ xung rất nhiều về độ chính xác cho các hệ thống này.
Xét một cách tổng quát, kết cấu đƣợc phân biệt không chỉ bởi các mẫu kết cấu mà còn bởi độ mạnh của các mẫu kết cấu đó. Điều này liên quan đến cấu trúc
không gian (bản thân các mẫu) và độ tƣơng phản (độ mạnh của mẫu). Thông tin vễ mẫu kết cấu thì độc lập về tỷ lệ xám trong khi độ tƣơng phản thì không. Trong khi độ tƣơng phản thì không bị ảnh hƣởng bởi các thao tác quay còn các mẫu kết cấu thì lại bị ảnh hƣởng. Việc bổ sung thêm cho toán tử LBP theo cách thức phụ thuộc vào độ tƣơng phản đƣợc Ojala (1996) đề xuất bằng cách đƣa ra toán tử LBP/C để biểu diễn các mô tả của kết cấu. Để sử dụng toán tử này tác giả định nghĩa thêm một đại lƣợng đo phƣơng sai của tỷ lệ xám các lân cận:
LBP/C đƣợc tính theo công thức: LBP/C = LBPriu2
P1,R1 / VARP2,R2 để có thể kết hợp các mẫu LBP không bị ảnh hƣởng bởi quay và thông tin về độ tƣơng phản của mẫu. Trong chú ý của tác giả các mẫu để tính LBP hay độ tƣơng phản có thể có các giá tị P, R khác nhau trong tính toán.
Khắc phục sự thay đổi với kích cỡ ảnh.
Một giới hạn khác của toán tử LBP là việc chỉ hỗ trợ làm việc tối ƣu với các kết cấu có miền không gian nhỏ. Các đặc trƣng đƣợc tính toán trong miền không gian 3x3 thì không đủ để mô tả các kết cấu với tỷ lệ lớn, mà đôi khi các kết cấu tỷ lệ lớn này lại là đặc trƣng cơ bản của bề mặt vật thể. Mặt khác các LBP gần kề không độc lập một cách hoàn toàn với các LBP khác. Ví dụ về LBP với 4 bit liền kề trong hình vẽ sau cho thấy rõ điều đó:
Hình 3.5: Ví dụ ảnh hƣởng của cấu trúc không gian nhỏ
Các mã LBP do bị giới hạn bởi các mã liền kề nên thực tế chúng có không gian ảnh hƣởng ít hơn là kích cỡ 3x3 vốn có. Một kỹ thuật đƣợc phát triển để
tăng độ chính xác cho toán tử LBP, để có thể làm việc tốt với miền không gian lớn hơn mà không làm mất đi ƣu điểm của các tính chất LBP bằng cách tập hợp các toán tử. Cách dễ dàng nhất để hỗ trợ miền không gian lớn hơn cho LBP là tập hợp các toán tử LBP với các giá trị P, R khác nhau cho mỗi điểm ảnh. Bằng cách này mỗi điểm ảnh lấy N mã LBP khác nhau. Thông tin chính xác nhất đƣợc lấy dựa vào thông tin về phân bố chung của các mã này. Tuy nhiên với việc tính toán cho nhiều phân bố xác suất chung nhƣ vậy sẽ làm tăng đáng kể thời gian tính