1. Trang chủ
  2. » Luận Văn - Báo Cáo

BÀI GIẢNG ỨNG DỤNG đh CNTT truyền thông thái nguyên xử lý ẢNH TRONG CÔNG NGHIỆP

5 64 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Phạm Đức Long - Khoa Cơng nghệ tự động hố ĐH CNTT & Truyền thông Thái Nguyên BÀI GIẢNG ỨNG DỤNG XỬ LÝ ẢNH TRONG CÔNG NGHIỆP 3.1 Biến đổi Hough Biến đổi Hough kỹ thuật dùng để tách đặc điểm hình dáng cụ thể ảnh nhị phân Khi dùng chương trình máy tính để nhận diện đối tượng có hình dạng bất kỳ, phương pháp hữu hiệu sử dụng biến đổi Hough Các tốn tìm kiếm từ mức đơn giản tìm đường thẳng tới tốn phức tạp tìm hình tròn, hình elipse hình phức tạp thực biến đổi Hough (với điều kiện hình dạng biểu diễn tốn học được) a) Biến đổi Hough tìm đường thẳng Không gian ảnh không gian tham số HT Rho and theta representation of a straight line Each line has a unique parameter set (ρ, θ) Trên hệ toạ độ Đề đường thẳng có hình dạng hình… Mỗi điểm có toạ độ (xi, yi) trục toạ độ Nếu dùng tham số ρ (độ dài đường vng góc từ gốc toạ độ đến đường thẳng) θ (góc đường vng góc với trục x) để biểu diễn đường thẳng biểu diễn đường thẳng qua thơng gian tham số Chúng ta có quan hệ y=− ρ cos(θ ) hay ρ = x*cos(θ)+y*sin(θ) *x+ sin(θ ) sin(θ ) Các giá trị ρ θ có giới hạn θ giới hạn [0.3600] [0, 2π] radian ρ giới hạn [−D,D] D đường chéo ảnh Như đường biến đổi thành điểm không gian tham số với thông số ρ θ, không gian gọi không gian Hough Kết biến đổi Hough lưu giữ ma trận gọi accumulator Một chiều ma trận giá trị θ (giá trị góc) chiều giá trị ρ (khoảng cách) and each element has a value telling how many points/pixels are on the line with the parameters (rho, Thái Nguyên 7-2013 Phạm Đức Long - Khoa Cơng nghệ tự động hố ĐH CNTT & Truyền thông Thái Nguyên BÀI GIẢNG ỨNG DỤNG XỬ LÝ ẢNH TRONG CÔNG NGHIỆP theta) So the element with the highest value tells what line is most represented in the input image Các bước biến đổi Hough đơn giản cho đường thẳng: Nạp ảnh Tìm biên ảnh (dùng phương pháp tìm biên) Với pixels ảnh Nếu pixel (x,y) điểm biên (edge) với giá trị góc θ tính ρ góc (θ) với pixel (x,y) tăng vị trí (ρ, θ) accumulator Vẽ khơng gian Hough Tìm giá trị lớn accumulator Vẽ đường với giá trị lớn ảnh đầu vào Để tìm đường tròn sử dụng biểu thức (x -a)^2 + (y-b)^2 = r^2 Chúng ta có tham số Nếu viết lại phương trình nhận a = x – r*cos(θ) b = y - r*sin(θ) cần mảng cấu trúc liệu accumulator chiều (3D) θ lấy giới hạn 3600 Sau ảnh toàn thể xử lý, accumulator trơng giống hình bên phải Mảng accumulator vẽ với r trục y theta cắt chéo qua trục x (across the x-axis) Các đường đường cong accumulator - đường vật lý mạnh ảnh đầu vào tương ứng với vùng đen accumulator Ví dụ biến đổi Hough tìm đường thẳng Ý tưởng: Tìm đường thẳng ảnh thơng số hố dạng: r = xcosθ + ysinθ , r khoảng cách vng góc từ gốc toạ độ đến đường thẳng θ góc r với trục x Với điểm (x,y) đường r θ số Với N điểm thẳng hàng toạ độ Đề có phương trình r = xcosθ + ysinθ Biến đổi Hough chuyển N điểm thành N đường hình sin mặt phẳng (r,θ), chúng giao điểm (r,θ) Thái Nguyên 7-2013 Phạm Đức Long - Khoa Cơng nghệ tự động hố ĐH CNTT & Truyền thơng Thái Nguyên BÀI GIẢNG ỨNG DỤNG XỬ LÝ ẢNH TRONG CƠNG NGHIỆP Thuật tốn: Input: Ảnh ngun dạng mảng chiều: Image1[xMax][yMax] Output: Ảnh mới: Image2 [xMax][yMax] chứa đường thẳng tìm Intermediate data structure: Hough [tMax][rMax] to calculate the corresponding lines xMax, yMax: Kích thước ảnh tMax: Giới hạn lớn góc tìm kiếm; Chẳng hạn 3600 x, y toạ độ không gian ảnh Algorithm: /* Fill in the Hough array*/ for (x=0; x< xMax; x++){ // Tìm khắp for (y=0 ; y< yMax ; y++){ // pixel ảnh if ( Image1[x][y] > IThresh){ // Nếu độ sáng điểm ảnh > ngưỡng độ sáng for (t=0 ; t< tMax ; t++){ // Xem khoảng góc tìm kiếm r = (x-xMax/2)*cos(t) +(y-yMax/2)*sin(t) ; // Tính r thực if (r >0) {Hough [t][r] ++;} // Nếu r> cập nhật mảng Hough } /* Process Hough array to find strong maxima */ for (t = 0; t < tMax / 2; t++) // Tìm nửa giới hạn góc for (r = 0; r < rMax; r++) // Tìm giới hạn r if (Hough[t][r] > Hthresh) // Nếu số điểm Hough > ngưỡng đặt trước { /* Check 5x5 neighborhood for max */ Thái Nguyên 7-2013 Phạm Đức Long - Khoa Công nghệ tự động hố ĐH CNTT & Truyền thơng Thái Nguyên BÀI GIẢNG ỨNG DỤNG XỬ LÝ ẢNH TRONG CÔNG NGHIỆP max = TRUE; for (dt = (t - 2); dt = 0) && (dt < tMax) && (Hough[dt][dr] > Hough[t][r])) // Nếu điều kiện // max = FALSE { max = FALSE; break; } // Dựng lại ảnh /* Process Hough array to create output image array */ if (max == TRUE) { makeLine(r, t); } } void makeLine (r,t) { for (x=0 ; x

Ngày đăng: 19/09/2019, 13:47

Xem thêm:

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w