Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 17 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
17
Dung lượng
5,66 MB
Nội dung
13 CHƯƠNG GIẢI THUẬT XỬLÝẢNH 3.1 Giới thiệu Khi tiềm hiểu tổng quan, quy trình sản xuất, cách đo kiểm áothun thủ công, phần xây dựng giải thuật xửlýảnh vô quan trọng Trong chương trình bày giải thuật dùng để nhận dạng điểm để tính kíchthước áo, gồm năm kích thước: Chiều dài, chiều rộng, tay áo, vai áo, đuôi áo Tác giả nhận thấy nhận dạng nách áo dễ dàng việc xửlý tiến hành trước tiên Hai giải thuật đưa phân tích Giải thuật thứ dùng phép biến đổi Hình thái ảnh để tìm nách áo Tuy nhiên, tìm nách áo, tác giả nhận thấy kíchthước lại khó áp dụng phương phápDo đó, phương pháp thứ hai đời Phương pháp thứ hai dùng giải thuật ghép điểm ảnh, dựa vào điểm ảnh đặc biệt mà ta lưu nhớ, ta tìm điểm tương tự áo camera chụp Từ xác định kíchthước mong muốn Trong trình nghiêncứugiải thuật xửlý ảnh, tác giả sử dụng hàm cung cấp thư viện emguCV để thực phép biến đổi ảnh thông dụng phép biến đổi Hình thái ảnh, chuyển ảnh màu sang ảnh xám, tách biên ảnh… 3.2 Cơ sở lý thuyết Đối tượng đề tài kiểm tra kíchthướcáothun với kíchthước chuẩn sai số cho phép thành phẩm theo tiêu chuẩn xuất Do với tính chất đặc thù có nhiều kíchthước khác áothun Điều gây khó khăn, tốn thời gian cho việc kiểm tra kíchthước thủ công Vì cần phải có hệ thống kiểm tra thông minh hơn, linh hoạt đokíchthướcáothun Dựa vào quy trình kiểm tra áo thủ công chưa mang lại hiệu cao, thời gian kiểm tra lâu Nên đề tài tác giả nghiêncứu đưa phương án sử dụng hệ thống kiểm tra áothun ứng dụng xửlýảnh 14 3.3 Giới thiệu ảnh số Khi quan sát ảnh, việc cảm nhận kíchthước màu sắc ảnh người quan sát tìm thấy thông tin cần thiết qua ảnhẢnh đối tượng đóng vai trò quan trọng lĩnh vực trao đổi thông tin định Để nhận thông tin chứa ảnh người ta có trình xửlýảnh Trong năm gần đây, kỹ thuật xửlýảnh ngày sử dụng phổ biến hệ thống tự động hóa Các hệ thống ngày thông minh hơn, không dừng lại việc xửlýảnh để nâng cao chất lượng ảnh, lưu trữ ảnh hay phân tích kết cấu ảnh mà tự động nhận dạng đối tượng ảnh để rút thông tin chứa ảnh Chẳng hạn, lĩnh vực thám không, Hình ảnh chụp từ không trung (bằng máy bay, vệ tinh ) nhờ hệ thống xửlýảnh động để xác định thông tin vùng mặt đất hay tượng tự nhiên diễn nhằm dự báo tượng tương tự xảy tương lai Hay lĩnh vực y học sử dụng kỹ thuật xửlýảnh chụp cắt lớp thể người, ảnh chụp siêu âm, ảnh chụp tế bào, nhiễm sắc thể để nhận dạng chuẩn đoán bệnh Hay lĩnh vực xửlýđo lường cần phải xửlýảnh chụp trình để nhận dạng, đo lường đo mực nước đập nước đo liều lượng, đo tốc độ dòng chảy, lượng hạt nhân nguyên tử Có nhiều phương phápxửlýảnh khác nhau, ngày lĩnh vực xửlýảnh số ngày phát triển sử dụng nhiều tiện lợi Với ảnh số thông tin ảnh truyền nhanh chóng, xác, việc xửlý lại đơn giản nhờ vào giúp đỡ máy tính số Để thực đokíchthước tương đối xác cần phài calib camera 3.4 Cân chỉnh camera Cũng giống thiết bị đo, cảm biến đo lường khác, để dùng camera ứng dụng đo lường trước hết cần phải trải qua bước calib camera để đảm bảo tính xác thực phép đo 15 Trong xửlý ảnh, mô hình camera đơn giản hiệu dùng phổ biến mô hình pinhole camera Theo mô Hình camera có bốn thông số đặc trưng cho thông số Hình học camera, bốn thông số gọi thông số nội camera, bao gồm: f x, fy, cx, cy fx (fy) tiêu cự thấu kính camera, tính đơn vị pixel, tích tiêu cự thật thấu kính hội tụ kíchthước phần tử cảm biến; cx, cy tọa độ điểm giao trục quang với cảm biến hệ tọa độ cảm biến Một cách lý tưởng thấu kính camera biến dạng (distortion) Tuy nhiên, thấu kính thực không thỏa mãn điều này, nguyên nhân sai số trình chế tạo, lắp ráp thấu kính Việc chế tạo thấu kính có bề mặt cầu dễ so với mặt parabol Quá trình lắp ráp khó đảm bảo độ xác vị trí tương quan cảm biến thấu kính Do đó, thông số camera xuất thêm thông số khác liên quan đến biến dạng chế tạo, lắp ráp gây Đó biến dạng hướng tâm (radial distortion) biến dạng tiếp tuyến Theo tài liệu, có năm thông số đặc trưng cho sai lệch Vậy ta có thêm năm tham số đặc trưng cho camera gọi tham số biến dạng Tóm lại, ta có bốn thông số nội năm thông số biến dạng đặc trưng cho camera Để dùng camera việc đo lường việc cần làm trước tiên xác định thông số Luận văn sử dụng hàm thư viện calib camera EmguCv dựa chương trình mẫu tài liệu để calib camera 3.5 Hệ số cân chỉnh camera Camera dùng luận văn camera Logitech Carl Zeiss Tessar hãng Logitech Thực cân chỉnh với bàn cờ có kíchthước ô 30 x 30 (mm) Hình 3.1 ta hệ số sau: Hình 3.1 Bàn cờ dùng để cân chỉnh camera luận văn 16 Hệ số camera cân chỉnh: Ma trận hệ số nội camera: 1886,61206 1929,38379 305,586395 246,049835 1,0 Vector hệ số distortion: [ 1,79822528 28,2098064 - 0,249643907 0,334334314] Sau cân chỉnh camera, ảnh chỉnh lại Hình 3.2b b Ảnh sau calib a Ảnh chưa calib Hình 3.2 Ảnh trước sau cân chỉnh camera * Ma trận homography Trong thị giác máy tính có khái niệm homography mặt phẳng (planar homography) phép chiếu từ mặt phẳng sang mặt phẳng khác Trong luận văn này, phép đo tiến hành dựa mặt phẳng, ứng dụng phép biến đổi homography mặt phẳng để biến đổi giá trị tọa độ pixel tọa độ thực Gọi H ma trận homography Ma trận H thể liên hệ điểm mặt phẳng thực điểm ảnh tương ứng ảnh thu từ camera Phương trình sau thể mối quan hệ : Pdst = H Pstc , Psrc = H −1 Pdst (3.1) 17 x dst Pdst = y dst , 1 x src Psrc = y src 1 (3.2) Có thể xác định ma trận H mà không cần biết thông số nội camera Thực tế, việc xác định ma trận H từ nhiều ảnh chụp đối tượng cách mà Emgu CV dùng để xác định thông số nội wecam Trong thư viện EmguCV có hàm dùng để xác định ma trận H mà biết điểm tương ứng hai mặt phẳng Để xác định ma trận H cần điểm (không có điểm thẳng hàng) tương ứng hai mặt phẳng Dùng nhiều cặp điểm tương ứng đảm bảo khả loại bỏ nhiễu tốt Luận văn dùng bàn cờ để calib camera để thực công việc 3.6 Giải thuật xửlýảnhẢNH ĐẦU VÀO CHUYỂN ẢNH XÁM NHỊ PHÂN HÓA TÁCH BIÊN TÌM CÁC ĐIỂM THÂN, NGỰC, CỔ, TAY, ĐUI ÁO TÍNH KÍCHTHƯỚC Hình 3.3 Sơ đồ khối quy trình xác định kíchthước Để phân loại áo dựa vào kích thước, luận văn dùng giải thuật xửlýảnh có sơ đồ Hình 3.3 Trong bước quan trọng tìm cặp điểm: thân áo, 18 ngực áo,tay áo, cổ áo,vai, đuôi Phần trình bày sơ lược vấn đề xửlýảnh nói chung Sau trình bày chi tiết giải thuật dung để trích xuất cặp điểm 3.6.1 Ảnh xám ( grayscale or grayscale digital image) Ảnh xám kiểu ảnh bit ( 256 màu) 16 bit (65.535 màu), giá trị pixel lưu trữ byte Ảnh xám dạng ảnh t đen rắng với giá trị độ lớn pixel thay đổi từ đến 255 tương ứng với thay đời từ đen sang trắng Theo chuẩn hệ thống màu NTSC (National Television System Commitee), ảnh bậc độ xám ảnh màu có cách tính pixel tương ứng ảnh bậc độ xám công thức: Y = YR + YG + YB = α Rd + β G d + δ Bd (3.3) Trong đó: Y giá trị bậc độ xám điểm ảnh Rd, Gd, Bd giá trị điểm ảnh màu R(đỏ), G(xanh lá), B(xanh dương) Trong thư viện emguCV, hàm GrayScale dùng để chuyển đổi ảnh màu sang ảnh mức xám với tham số code Gray_Image, Hình 3.4 Hình 3.4 Biểu diễn ảnh xám 19 3.6.2 Nhị phân hóa ảnh Nhị phân hóa trình biến ảnh xám thành ảnh nhị phân Ảnh nhị phân chứa hai giá trị (hoặc 255 tùy theo quy định cấu trúc ảnh) Theo đó, giá trị giá trị ứng với điểm đen ảnh giá trị (hoặc 255) giá trị ứng với điểm trắng Công thức để nhị phân ảnh đặt tất giá trị ảnh xám chúng bé ngưỡng T cho trước 255 chúng lớn ngưỡng T Vấn đề với ngưỡng T cho ta ảnh nhị phân ý muốn, nghĩa ảnh làm vùng đối tượng Việc xác định giá trị T khó chúng phụ thuộc vào điều kiện chiếu sáng khác môi trường Với môi trường T nhận giá trị, môi trường khác lại giá trị khác Để tránh khó khăn việc chọn ngưỡng T ta có thêm lựa chọn dùng ngưỡng động Thuật toán nhị phân hóa với ngưỡng động hay gọi nhị phân hóa với ngưỡng thích nghi cách để nhị phân hóa ảnh xám với ngưỡng khác vùng ảnh khác ảnh Hình 3.5 Mặt nạ lấy ngưỡng động Ta lấy ngưỡng nhị phân vùng cục cửa sổ có kíchthước mxn Ngưỡng cần xác định tâm cửa sổ trung bình cộng giá trị lân cận Giả sử ta lấy ngưỡng động cho điểm A22 kíchthước cửa sổ 3x3 Hình 3.4 Khi giá trị T T = 1/8(A11 + A12+ A13 + A21 + A23 + A31 + A32 + A33) Nếu A22 > T, đặt A22 255, A22 < T, đặt A22 Ta thấy để nhị phân hóa ảnh theo cách tốn nhiều thời gian, đặc biệt cửa sổ ta chọn kíchthước lớn Để tránh 20 tượng này, người ta sử dụng phương pháp gọi tích phân ảnh (Integral Image) 3.7 Trích vùng chứa áo Có nhiều phương pháp phép toán xửlýảnh để trích vùng chứa áo Mỗi phương pháp có ưu, khuyết điểm, ta cần phải kết hợp phương pháp để trích vùng chứa áo cho kết tốt 3.7.1 Biên ảnh Biên vấn đề chủ yếu phân tích ảnh kỹ thuật ảnh chủ yếu dựa vào biên Một điểm ảnh coi biên có thay đổi đột ngột mức xám.Tập hợp điểm tạo thành biên hay đường bao ảnh, thể Hình ( Hình 3.6) Sự biến thiên điểm ảnh thường nhỏ, biến thiên độ sáng điểm biên lại Hình 3.6 Biên ảnh 3.7.2 Làm biên Một lớp lọc khác làm rõ nét tăng cường đường biên bên ảnhĐó lọc thông cao, có đặc tính ngược với lọc thông thấp, 21 không làm thay đổi thành phần tần số cao tín hiệu, làm suy giảm thành phần tần số thấp hạn chế vùng có mức xám Mặt khác, lọc thông cao có tính chất làm cho liệu điểm ảnh vùng đường biên đối tượng hiệu chỉnh yếu tố đường biên gia tăng Sự nhận biết đường biên yếu cầu cần thiết cho phương pháp phân tích ảnh 3.7.3 Kỹ thuật tách biên Tách biên bước quan trọng trình xửlýảnh Trong biên phần chia tách nằm phần ảnh có khác biệt mức xám Mặt khác biên định nghĩa điểm ảnh mà có thay đổi đột ngột độ sáng Dò biên tập hợp phương phápxữlý dùng để xác định biến đổi góc cạnh ảnh nhằm đưa biên dạng đối tượng Có nhiều phương pháp tách biên luận văn ta xem xét chủ yếu đến ba phương pháp là: 3.7.3.1 Phương pháp Gradient Phương pháp gradient phương phápdò biên cục dựa vào cực đại đạo hàm Theo định nghĩa gradient vector có thành phần biểu thị tốc độ thay đổi gía trị điểm ảnh theo hai hướng x y ∂f ( x, y ) f ( x + dx, y ) − f ( x, y ) = fx / ≈ ∂x dx (3.4) ∂f ( x, y ) f ( x + dx, y ) − f ( x, y ) = fy / ≈ ∂x dx (3.5) Với dx khoảng cách điểm theo hướng x tượng tự với dy Trên thực tế dx = dy =1 Với ảnh liên tục f(x,y), đạo hàm riêng cho phép xác định vị trí cực đại cục theo hướng biên Mặt khác, gradient lột ảnh liên tục biểu diễn hàm f(x,y) dọc theo r với góc θ, thể bởi: 22 df ∂f dx ∂f dy = + = f x cos θ + f y sin θ dr ∂x dr ∂y dr (3.6) df/dr đạt cực đại fxcosθ + fysinθ = Do ta xác định hướng cực đại chúng f df θ r = tan −1 x = f x2 + f y2 f dr y , θ hướng biên Hình 3.7 Hướng biên 3.7.3.2 Phương pháp Canny Phương pháp thể qua bốn bước Bước 1: Làm trơn ảnh phương pháp Gaussian Bước 2: Ảnh bước đạo hàm theo phương x,y Sau tính gía trị đạo hàm điểm theo phương x,y tính độ lớn gradient tương ứng M ( x, y ) = I x′ ( x, y ) + I ′y ( x, y ) (3.7) Bước 3: Sau tính toán gá trị gradient, đường biên điểm có gía trị gradient cục Quá trình dò biên tiến hành cách giảm dần góc gradient Bước Phân ngưỡng đường biên: phương pháp Canny không dùng cách Threshold thông thường mà sử dụng phương pháp gọi “ hysteresis thresholding” Phương pháp sử dụng ngưỡng ngưỡng ngưỡng Nếu giá trị pixel lớn ngưỡng lớp Những điểm nằm hai giá trị xem xét tùy thuộc vào số điểm mà connect 23 Kết cho thấy phương pháp canny nhiều hiệu ảnh điều kiện thông thường độ sáng độ tương phản 3.8 Dò biên dựa theo Canny Ở điểm ảnh ,ta thấy thay đổi đột ngột màu sắc độ tương phản, cách tính gradient , ta phân biệt điểm ảnh tách chúng thành tập điểm đường biêt ý tưởng thuật toán để tính gradient điểm ảnh để từ ta suy tập điểm tập đường biên Với ảnh bình thường, ảnh thường bị loại nhiễu bị chấm nhỏ(salt and pepper noise ) hay speckle noise đường biên bị mờ… , trước xử lí tìm gradient, ta qua trước bước khử nhiễu (blur ảnh) phương pháp Gauss Cuối ta xử dụng số thuật toán để làm mỏng đường biên, loại bỏ thành phần dư thừa Hình 3.8 Ảnhdò biên canny Luận văn dùng giải thuật Canny để tìm biên ảnhGiải thuật Canny thực thư viện EmguCV thông qua hàm canny Threshold, cannyThresholdLinking thực 3.8.1 Sử dụng ngưỡng để tìm đường biên Ta sử dụng ngưỡng để xác định đường biên với ảnh có độ “nhiễu” cao (các vùng tối sáng không …), ta nên sử dụng ngưỡng, cao thấp để đạt hiệu tối ưu 24 3.8.2 Thuật toán Otsu Thresholding q1 (T ) = ∑i =1 P (i ) (3.8) q (T ) = ∑i =T +1 P (i ) (3.9) T T µ1 (T ) = ∑i =1 T iP (i ) q1 (T ) µ (T ) = ∑i =T +1 T (3.10) iP (i ) q (T ) σ 22 (T ) = ∑i =T +1[i − µ (T )]2 T (3.11) iP (i ) q (T ) σ b2 = σ − σ w2 (T ) = q1 (T )[1 − q1 (T )][ µ1 (T ) − µ (tT )]2 (3.12) (3.13) Thuật toán Ostu sử dụng để tự động lấy ngưỡng ảnh dựa Hình dáng lược đồ xám ảnh giảm mức độ xám ảnh màu thành ảnh nhị phân Thuật toán thực qua bước sau: Bước Tính histogram, xác suất giá trị mức xám Bước Khởi tạo : q1 (1) = p(1); μ1(0) = Bước Duyệt giá trị T từ đến T + Tính q1(t); � 1( T ) Tính σ B2 (T ) Bước Cập nhật ngưỡng T ứng với σ B2 (T ) lớn Qua trình thử nghiệm phân tích, thể qua Hình 3.9 25 Hình 3.9 Ảnh thuật toán ostu 3.8.3 Tìm điểm đặc biệt Việc để phát cặp điểm để tính kíchthướcáothun nhiệm vụ tác giả tập trung giải thực luận văn này, kết công việc điều kiện cần để hệ thống hoạt động Nhiệm vụ luận văn xác định sáu kích thước: chiều dài, chiều rộng, tay áo, vai áo, cổ áo đui áo Qua trình áp dụng phép biến đổi hình thái ảnh lên ảnh áo, tác giả nhận thấy kíchthước dễ phát kíchthước chiều rộng ngực Để tính kíchthước chiều rộng ngực ta phải phát hai nách áo Nhờ đặc tính cặp điểm hai nách áo phát chúng 3.8.3.1.Thuật toán tìm chiều dài áo Sau sử dụng thuật toán tách biên canny đến lúc ảnh vật trở thành khung ảnh nét, dùng hàm LineSegment2D EmguCV kiểm tra cột, hàn, lúc tính tọa độ điểm hai biên Thuật toán mô tả sau: Bước 1: Kiểm tra có điểm đặc biệt Bước 2: Dò vị trí có tọa độ 255pixel 26 Bước 3: Kiểm tra hàng từ trái qua lấy điểm có tọa độ pi(xi,yi) ( i thay đổi) Bước 4: Kiểm tra cột từ phải qua lấy điểm có tọa độ pj(xj,yj) ( j thay đổi) Bước 5: Khớp cặp điểm pi,pj, chọn chọn cặp điểm có tọa độ 255pixel Bước 6: Vẽ đường thẳng nối hai điểm ta kíchthước chiều dài áo thể qua Hình 3.10 a Ảnhđo thân áo b Ảnhđo thân áogiải thuật Hình 3.10 Ảnhđo thân áo 3.8.3.2 Thuật toán tìm chiều dài tay áo Bước 1: Kiểm tra có điểm đặc biệt Bước 2: Dò vị trí có tọa độ 255pixel Bước 3: Kiểm tra hàng từ trái qua lấy điểm có tọa độ pi(xi,yi) Bước 4: Kiểm tra cột từ phải qua lấy điểm có tọa độ pj(xj,yj) Bước 5: Nối hai điểm có tọa độ 255 pixel Bước 6: Tính cạnh quyền tam giác vuông ta có kíchthước tay áo thể qua Hình 3.11 27 b Ảnhđo tay áogiải thuật a Ảnhđo tay áo Hình 3.11 Ảnhđo tay áo 3.8.3.3 Thuật toán tìm kíchthước đuôi áo Bước1: Từ đái áođo lên Bước 2: Dò vị trí có tọa độ 255pixel Bước 3: Kiểm tra hàng từ trái qua lấy điểm có tọa độ pi(xi,yi) Bước 4: Kiểm tra cột từ phải qua lấy điểm có tọa độ pj(xj,yj) Bước 5: Nối hai điểm có tọa độ 255 pixel ta kíchthước đui áo thể hình 3.12 a Ảnhđo đuôi áo b Ảnhđo đuôi áogiải thuật Hình 3.12 Ảnhđo đuôi áo 28 3.8.3.4 Thuật toán tìm kíchthước vai áo Bước 1: Đo từ hai mép vai áo Bước 2: Dò vị trí có tọa độ 255pixel Bước 3: Kiểm tra hàng từ trái qua lấy điểm có tọa độ pi(xi,yi) Bước 4: Kiểm tra cột từ phải qua lấy điểm có tọa độ pj(xj,yj) Bước 5: Nối hai điểm có tọa độ 255 pixel ta kíchthước vai áo thể hình 3.13 a Ảnhđo vai áo b Ảnhđo vai áogiải thuật Hình 3.13 Ảnhđo vai áo 3.8.3.5 Thuật toán tìm kíchthước cổ áo Bước 1: Kiểm tra điểm đặc biệt Bước 2: Dò vị trí có tọa độ 255pixel Bước 3: Kiểm tra hàng từ trái qua lấy điểm có tọa độ pi(xi,yi) Bước 4: Kiểm tra cột từ phải qua lấy điểm có tọa độ pj(xj,yj) Bước 5: Nối hai điểm có tọa độ 255 pixel ta kíchthước vai áo thể hình 3.14 29 b Ảnhđo cổ áogiải thuật a Ảnhđo cổ áo Hình 3.14 Ảnhđo cổ áo 3.8.3.6 Thuật toán tìm kíchthước ngực áo ( chiều rộng) Bước 1: Từ nách áo Bước 2: Dò vị trí có tọa độ 255pixel Bước 3: Kiểm tra hàng từ trái qua lấy điểm có tọa độ pi(xi,yi) Bước 4: Kiểm tra cột từ phải qua lấy điểm có tọa độ pj(xj,yj) Bước 5: Nối hai điểm có tọa độ 255 pixel ta kíchthước ngực áo thể hình 3.15 a Ảnhđo ngực áo b Ảnhđo ngực áogiải thuật Hình 3.15 Ảnhđo rộng áo ... vuông ta có kích thước tay áo thể qua Hình 3.11 27 b Ảnh đo tay áo giải thuật a Ảnh đo tay áo Hình 3.11 Ảnh đo tay áo 3.8.3.3 Thuật toán tìm kích thước đuôi áo Bước1: Từ đái áo đo lên Bước 2:... pixel ta kích thước đui áo thể hình 3.12 a Ảnh đo đuôi áo b Ảnh đo đuôi áo giải thuật Hình 3.12 Ảnh đo đuôi áo 28 3.8.3.4 Thuật toán tìm kích thước vai áo Bước 1: Đo từ hai mép vai áo Bước 2:... 255 pixel ta kích thước vai áo thể hình 3.14 29 b Ảnh đo cổ áo giải thuật a Ảnh đo cổ áo Hình 3.14 Ảnh đo cổ áo 3.8.3.6 Thuật toán tìm kích thước ngực áo ( chiều rộng) Bước 1: Từ nách áo Bước 2: