Giáo trình Xử lý ảnh: Phần 2

45 103 0
Giáo trình Xử lý ảnh: Phần 2

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Phần 2 của giáo trình Xử lý ảnh gồm có những nội dung sau: Chương 3 trình bày các kỹ thuật cơ bản trong việc phát hiện biên của các đối tượng ảnh theo cả hai khuynh hướng: Phát hiện biên trực tiếp và phát hiện biên gián tiếp. Chương 4 thể hiện cách kỹ thuật tìm xương theo khuynh hướng tính toán trục trung vị và hướng tiếp cận xấp xỉ nhờ các thuật toán làm mảnh song song và gián tiếp. Và cuối cùng là Chương 5 với các kỹ thuật hậu xử lý. Mời các bạn cùng tham khảo.

Chương 3: BIÊN VÀ CÁC PHƯƠNG PHÁP PHÁT HIỆN BIÊN 3.1 GIỚI THIỆU Biên vấn đề quan trọng trích chọn đặc điểm nhằm tiến tới hiểu ảnh Cho đến chưa có định nghĩa xác biên, ứng dụng người ta đưa độ đo khác biên, độ đo độ đo thay đổi đột ngột cấp xám Ví dụ: Đối với ảnh đen trắng, điểm gọi điểm biên điểm đen có điểm trắng bên cạnh Tập hợp điểm biên tạo nên biên hay đường bao đối tượng Xuất phát từ sở người ta thường sử dụng hai phương pháp phát biên bản: Phát biên trực tiếp: Phương pháp làm biên dựa vào biến thiên mức xám ảnh Kỹ thuật chủ yếu dùng để phát biên dựa vào biến đổi cấp xám theo hướng Cách tiếp cận theo đạo hàm bậc ảnh dựa kỹ thuật Gradient, lấy đạo hàm bậc hai ảnh dựa biến đổi gia ta có kỹ thuật Laplace Phát biên gián tiếp: Nếu cách ta phân ảnh thành vùng ranh giới vùng gọi biên Kỹ thuật dò biên phân vùng ảnh hai tốn đối ngẫu dò biên để thực phân lớp đối tượng mà phân lớp xong nghĩa phân vùng ảnh ngược lại, phân vùng ảnh phân lớp thành đối tượng, phát biên Phương pháp phát biên trực tiếp tỏ hiệu chịu ảnh hưởng nhiễu, song biến thiên độ sáng không đột ngột, phương pháp tỏ hiệu quả, phương pháp phát biên gián tiếp khó cài đặt, song lại áp dụng tốt trường hợp 3.2 CÁC PHƯƠNG PHÁP PHÁT HIỆN BIÊN TRỰC TIẾP 3.2.1 Kỹ thuật phát biên Gradient 32 Theo định nghĩa, gradient véctơ có thành phần biểu thị tốc độ thay đổi giá trị điểm ảnh, ta có: ∂f ( x, y ) f ( x + dx, y ) − f ( x, y ) = fx ≈ ∂x dx ∂f ( x, y ) f ( x, y + dy ) − f ( x, y ) = fy ≈ ∂y dy Trong đó, dx, dy khoảng cách (tính số điểm) theo hướng x y * Nhận xét: Tuy ta nói lấy đạo hàm thực chất mô pháng xấp xỉ đạo hàm kỹ thuật nhân chập (cuộn theo mẫu) ảnh số tín hiệu rời rạc nên đạo hàm khơng tồn Ví dụ: Với dx = dy = 1, ta có: ⎧ ∂f ⎪⎪ ∂x ≈ f (x + 1, y ) − f (x, y ) ⎨ ∂f ⎪ ≈ f (x, y + 1) − f (x, y ) ⎪⎩ ∂y Do đó, mặt nạ nhân chập theo hướng x A= (− 1) ⎛ − 1⎞ hướng y B= ⎜⎜ ⎟⎟ ⎝1⎠ Chẳng hạn: 0 I= 0 3 3 3 3 0 3 * 0 * 0 * Ta có, I⊗A= * 3 * 0 * 0 * * * * 0 * ; I ⊗ B= * * * * I ⊗ A + I ⊗ B= 0 * * * * * * 33 3.2.1.1 Kỹ thuật Prewitt Kỹ thuật sử dụng mặt nạ nhập chập xấp xỉ đạo hàm theo hướng x y là: -1 Hx = -1 -1 -1 -1 -1 Hy = 0 1 Các bước tính tốn kỹ thuật Prewitt + Bước 1: Tính I ⊗ Hx I ⊗ Hy + Bước 2: Tính I ⊗ Hx + I ⊗ Hy Ví dụ: 0 0 0 0 0 0 -10 -10 -15 -15 * * * * -10 -10 -5 -5 * * * * * * * * * * * * 15 15 10 0 0 -15 -15 -10 -5 * * * * * * I ⊗ Hy = -15 -15 -10 -5 * * * * * * * * * * * * * * I= I ⊗ Hx = 5 0 5 0 0 0 0 * * 0 * * 5 0 5 0 34 15 I ⊗ Hx + I ⊗ Hy = 15 -5 -15 -15 * * * * -15 -15 -20 -15 -15 -15 -15 -10 * * * * * * * * * * * * * * * * 3.2.1.2 Kỹ thuật Sobel Tương tự kỹ thuật Prewitt kỹ thuật Sobel sử dụng mặt nạ nhân chập theo hướng x, y là: -1 Hx = -2 -1 -1 -2 -1 Hy = 0 Các bước tính tốn tương tự Prewitt + Bước 1: Tính I ⊗ Hx I ⊗ Hy + Bước 2: Tính I ⊗ Hx + I ⊗ Hy 3.2.1.3 Kỹ thuật la bàn Kỹ thuật sử dụng mặt nạ nhân chập theo hướng 00, 450, 900, 1350, 180 , 2250, 2700, 3150 5 -3 5 -3 H2 = -3 -3 H1 = -3 -3 -3 -3 -3 -3 -3 5 -3 -3 H3 = -3 H4 = -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 H5 = -3 H6 = -3 -3 -3 5 5 -3 -3 -3 -3 -3 H7 = -3 H8 = -3 5 -3 -3 -3 35 Các bước tính tốn thuật tốn La bàn + Bước 1: Tính I ⊗ Hi ; i = 1,8 + Bước 2: ∑I ⊗ H i =1 i 3.2.2 Kỹ thuật phát biên Laplace Các phương pháp đánh giá gradient làm việc tốt mà độ sáng thay đổi rõ nét Khi mức xám thay đổi chậm, miền chuyển tiếp trải rộng, phương pháp cho hiệu phương pháp sử dụng đạo hàm bậc hai Laplace Toán tử Laplace định nghĩa sau: ∂2 f ∂2 f ∇ f = + ∂x ∂y Ta có: ∂2 f ∂ ⎛ ∂f ⎞ ∂ = ⎜ ⎟ ≈ ( f ( x + 1, y ) − f ( x, y ) ) ∂x ∂x ⎝ ∂x ⎠ ∂x ≈ [ f ( x + 1, y ) − f ( x, y )] − [ f ( x, y ) − f ( x − 1, y )] ≈ f ( x + 1, y ) − f ( x, y ) + f ( x − 1, y ) Tương tự, ∂2 f ∂ ⎛ ∂f ⎞ ∂ ⎜ ⎟ ≈ ( f ( x, y + 1) − f ( x, y ) ) = ∂y ∂y ⎜⎝ ∂y ⎟⎠ ∂y ≈ [ f ( x, y + 1) − f ( x, y )] − [ f ( x, y ) − f ( x, y − 1)] ≈ f ( x, y + 1) − f ( x, y ) + f ( x, y − 1) Vậy: ∇ f= f(x+1,y) + f(x,y+1) - 4f(x,y) + f(x-1,y) + f(x,y-1) Dẫn tới: ⎛ 0⎞ ⎜ ⎟ H = ⎜1 − 1⎟ ⎜ 0⎟ ⎝ ⎠ Trong thực tế, người ta thường dùng nhiều kiểu mặt nạ khác để xấp xỉ rời rạc đạo hàm bậc hai Laplace Dưới ba kiểu mặt nạ thường dùng: 36 ⎛ −1 ⎞ ⎛ − − − 1⎞ ⎛ −2 ⎞ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ H1 = ⎜ − − 1⎟ H = ⎜ − − 1⎟ H = ⎜ − − ⎟ ⎜ −1 ⎟ ⎜ − − − 1⎟ ⎜ −2 ⎟ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠ VD: I= 0 0 0 5 5 0 5 5 0 5 5 0 0 0 0 0 0 0 3.3 PHÁT HIỆN BIÊN GIÁN TIẾP 3.3.1 Một số khái niệm *Ảnh điểm ảnh Ảnh số mảng số thực chiều (Iij) có kích thước (M×N), phần tử Iij(i = 1, ,M; j = 1, ,N) biểu thị mức xám ảnh (i,j) tương ứng Ảnh gọi ảnh nhị phân giá trị Iij nhận giá trị Ở ta xét tới ảnh nhị phân ảnh đưa dạng nhị phân kỹ thuật phân ngưỡng Ta ký hiệu ℑ tập điểm vùng (điểm đen) ℑ tập điểm (điểm trắng) *Các điểm 8-láng giềng Giả sử (i,j) điểm ảnh, điểm 4-láng giềng điểm kề trên, dưới, trái, phải (i,j): N4(i,j) = {(i’,j’) : |i-i’|+|j-j’| = 1}, điểm 8-láng giềng gồm: N8(i,j) = {(i’,j’) : max(|i-i’|,|j-j’|) =1} Trong Hình 1.2 biểu diễn ma trận láng giềng kề nhau, điểm P0, P2, P4, P6 4-láng giềng điểm P, điểm P0, P1, P2, P3, P4, P5, P6, P7 8-láng giềng P 37 P3 P2 P1 P4 P P0 P5 P6 P7 Hình 1.3 Ma trận 8-láng giềng kề *Đối tượng ảnh Hai điểm Ps, Pe ∈ E, E ⊆ ℑ ℑ gọi 8-liên thông (hoặc 4liên thông) E tồn tập điểm gọi đường (io,jo) (in,jn) cho (io,jo)= Ps, (in,jn)= Pe, (ir,jr) ∈ E (ir,jr) 8-láng giềng (hoặc 4-láng giềng tương ứng) (ir-1,jr-1) với r = 1,2, ,n Nhận xét: Quan hệ k-liên thông E (k=4,8) quan hệ phản xạ, đối xứng bắc cầu Bởi quan hệ tương đương Mỗi lớp tương đương gọi thành phần k-liên thông ảnh Về sau ta gọi thành phần k-liên thông ảnh đối tượng ảnh 3.3.2 Chu tuyến đối tượng ảnh Định nghĩa 3.1: [Chu tuyến] Chu tuyến đối tượng ảnh dãy điểm đối tượng ảnh P1,…,Pn cho Pi Pi+1 8-láng giềng (i=1, ,n-1) P1 8-láng giềng Pn, ∀i ∃Q không thuộc đối tượng ảnh Q 4-láng giềng Pi (hay nói cách khác ∀i Pi biên 4) Kí hiệu Tổng khoảng cách hai điểm chu tuyến độ dài chu tuyến kí hiệu Len(C) hướng PiPi+1 hướng chẵn Pi Pi+1 – láng giềng (trường hợp lại PiPi+1 hướng lẻ) Hình 3.1 biểu diễn chu tuyến ảnh, đó, P điểm khởi đầu chu tuyến P Hình 3.1 Ví dụ chu tuyến đối tượng ảnh 38 Định nghĩa 3.2 [Chu tuyến đối ngẫu] Hai chu tuyến C= C⊥= gọi đối ngẫu ∀i ∃j cho: (i) Pi Qj 4-láng giềng (ii) Các điểm Pi vùng Qj ngược lại Định nghĩa 3.3 [Chu tuyến ngoài] Chu tuyến C gọi chu tuyến ngồi (Hình 3.2a) (i) Chu tuyến đối ngẫu C⊥ chu tuyến điểm (ii) Độ dài C nhỏ độ dài C⊥ Định nghĩa 3.4 [Chu tuyến trong] Chu tuyến C gọi chu tuyến (Hình 3.2b) nếu: (i) Chu tuyến đối ngẫu C⊥ chu tuyến điểm (ii) Độ dài C lớn độ dài C⊥ Chu tuyÕn C Chu tuyÕn C⊥ a) Chu tuyến Chu tuyÕn C⊥ Chu tuyÕn C b) Chu tuyến Hình 3.2 Chu tuyến trong, chu tuyến ngồi Định nghĩa 3.5 [Điểm điểm chu tuyến] Giả sử C= chu tuyến đối tượng ảnh P điểm ảnh Khi đó: (i) Nếu nửa đường thẳng xuất phát từ P cắt chu tuyến C số lẻ lần, P gọi điểm chu tuyến C kí hiệu in(P,C) (ii) Nếu P∉C P điểm C, P gọi điểm ngồi chu tuyến C kí hiệu out(P,C) Bổ đề 3.1 [Chu tuyến đối ngẫu] Giả sử E ⊆ ℑ đối tượng ảnh C= < P1P2 Pn> chu tuyến E, C = chu tuyến đối ngẫu tương ứng Khi đó: ⊥ (i) Nếu C chu tuyến in(Qi,C) ∀i (i=1, ,m) 39 (ii) Nếu C chu tuyến ngồi in(Pi,C⊥) ∀i (i=1, ,n) Bổ đề 3.2 [Phần trong/ngoài chu tuyến] Giả sử E ⊆ ℑ đối tượng ảnh C chu tuyến E Khi đó: (i) Nếu C chu tuyến ngồi ∀x ∈ E cho x∉C, ta có in(x,C) (ii) Nếu C chu tuyến ∀x ∈ E cho x∉C, ta có out(x,C) Định lý 3.1 [Tính chu tuyến ngoài] Giả sử E ⊆ ℑ đối tượng ảnh CE chu tuyến E Khi CE 3.3.3 Thuật tốn dò biên tổng qt Biểu diễn đối tượng ảnh theo chu tuyến thường dựa kỹ thuật dò biên Có hai kỹ thuật dò biên Kỹ thuật thứ xét ảnh biên thu từ ảnh vùng sau lần duyệt đồ thị, sau áp dụng thuật tốn duyệt cạnh đồ thị Kỹ thuật thứ hai dựa ảnh vùng, kết hợp đồng thời q trình dò biên tách biên Ở ta quan tâm cách tiếp cận thứ hai Trước hết, giả sử ảnh xét bao gồm vùng ảnh 8-liên thông ℑ, bao bọc vành đai điểm Dễ thấy ℑ vùng 4liên thông trường riêng trường hợp Về bản, thuật tốn dò biên vùng bao gồm bước sau: • Xác định điểm biên xuất phát • Dự báo xác định điểm biên • Lặp bước gặp điểm xuất phát Do xuất phát từ tiêu chuẩn định nghĩa khác điểm biên, quan hệ liên thơng, thuật tốn dò biên cho ta đường biên mang sắc thái khác Kết tác động toán tử dò biên lên điểm biên ri điểm biên ri+1 (8-láng giềng ri) Thơng thường tốn tử xây dựng hàm đại số Boolean 8-láng giềng ri Mỗi cách xây dựng toán tử phụ thuộc vào định nghĩa quan hệ liên thơng điểm biên Do gây khó khăn cho việc khảo sát tính chất đường biên Ngồi ra, bước dò biên phải kiểm tra tất 8-láng giềng điểm nên thuật toán thường hiệu Để khắc phục hạn chế trên, thay sử dụng điểm biên ta sử dụng cặp điểm biên (một thuộc ℑ, thuộc ℑ ), cặp điểm tạo nên tập vùng, kí hiệu NV phân tích tốn tử dò biên thành bước: 40 • Xác định cặp điểm vùng • Lựa chọn điểm biên Trong bước thứ thực chức ánh xạ tập NV lên NV bước thứ hai thực chức chọn điểm biên Thuật tốn dò biên tổng qt Bước 1: Xác định cặp nền-vùng xuất phát Bước 2: Xác định cặp nền-vùng Bước 3: Lựa chọn điểm biên vùng Bước 4: Nếu gặp lại cặp xuất phát dừng, khơng quay lại bước Việc xác định cặp nền-vùng xuất phát thực cách duyệt ảnh từ xuống từ trái qua phải kiểm tra điều kiện lựa chọn cặp nền-vùng Do việc chọn điểm biên mang tính chất quy ước, nên ta gọi ánh xạ xác định cặp nền-vùng tốn tử dò biên Định nghĩa 3.6 [Tốn tử dò biên] Giả sử T ánh xạ sau: T: NV → NV (b,r) a (b’,r’) Gọi T tốn tử dò biên sở thoả mãn điều kiện: b’,r’ 8-láng giềng r Giả sử (b,r) ∈ NV; gọi K(b,r) hàm chọn điểm biên Biên dạng ℑ định nghĩa theo ba cách: • Tập điểm thuộc ℑ có mặt NV, tức K(b,r)= r • Tập điểm thuộc ℑ có NV, tức K(b,r)= b • Tập điểm ảo nằm cặp nền-vùng, tức K(b,r) điểm nằm hai điểm b r Cách định nghĩa thứ ba tương ứng cặp nền-vùng với điểm biên Còn cách định nghĩa thứ thứ hai số cặp nềnvùng có chung điểm biên Bởi vậy, q trình chọn điểm biên thực sau: i:= 1; (bi,ri):= (bo,ro); While K(bi,ri)K(bn,rn) and i≤8 Begin (bi+1,ri+1)= T(bi,ri); i:= i+1; End; Điều kiện dừng Cặp nền-vùng thứ n trùng với cặp vùng xuất phát: (bn,rn)= (bo,ro) 41 d Xấp xỉ đa giác đa giác n cạnh Gọi M(x0,y0) trọng tâm đa giác, lấy đỉnh Q tuỳ ý đa giác, xét đa giác n cạnh Pg’ tạo đỉnh Q với tâm M Kí hiệu E(Pg, Pg’)= area ( Pg ) − area ( Pg ' ) E(Pg, En)=min E(Pg,Pg’) Q chạy khắp đỉnh đa giác 5.2.2 Xấp xỉ đa giác theo bất biến aphin Trong [7] đưa mơ hình chuẩn tắc bất biến aphin, cho phép chuyển tốn xấp xỉ đối tượng bất biến aphin toán xấp xỉ mẫu dạng chuẩn tắc Như đưa việc đối sánh đối tượng với mẫu bất biến đồng dạng, chẳng hạn việc xấp xỉ tam giác, hình bình hành, ellipse tương đương với xấp xỉ tam giác đều, hình vng, hình tròn v.v Thủ tục xấp xỉ theo bất biến aphin đa giác với hình sở thực sau: + Bước 0: Phân loại bất biến aphin dạng hình sở Dạng hình sở Dạng chuẩn tắc Tam giác Tam giác Hình bình hành Hình vng Ellipse Đường tròn … … + Bước 1: Tìm dạng chuẩn tắc sở Pg' thoả mãn điều kiện: ⎧m01 = m10 = ⎪ ⎨m02 = m20 = ⎪m = m = 31 ⎩ 13 (phép tịnh tiến) (phép co dãn theo hai trục x, y) (**) + Bước 2: Xác định biến đổi aphin T chuyển đa giác thành đa giác Pg dạng chuẩn tắc (thoả mãn tính chất (**)) Xấp xỉ đa giác Pg với dạng chuẩn tắc sở Pg’ tìm bước với độ đo xấp xỉ E(Pg,Pg’) + Bước 3: Kết luận, đa giác ban đầu xấp xỉ T-1(Pg’) với độ đo xấp xỉ E(Pg,Pg’) 62 Đối với bước [7] đưa hai ví dụ sau: Ví dụ 1: Tồn tam giác ΔP1P2P3 thoả mãn tính chất (**) P1=(0,-2α),P2= ( 3α, α) , P3= (− 3α, α) , α= 28 3 Ví dụ 2: Tồn hai hình vng P1P2 P3 P4 thoả mãn tính chất (**) Hình vng thứ có đỉnh tương ứng (-p,-p),(-p,p), (p,3 p),(p,p), với p= 4 Hình vng thứ hai có đỉnh tương ứng (-p,0),(p,0), (0,-p),(0,p), với p= 5.3 BIẾN ĐỔI HOUGH 5.3.1 Biến đổi Hongh cho đường thẳng Bằng cách ta thu số điểm vấn đề đặt cần phải kiểm tra xem điểm có đường thẳng hay khơng Bài tốn: Cho n điểm (xi; yi) i = 1, n ngưỡng θ kiểm tra n điểm có tạo thành đường thẳng hay không? * Ý tưởng Giả sử n điểm nằm đường thẳng đường thẳng có phương trình y = ax + b Vì (xi, yi) i = 1, n thuộc đường thẳng nên y1 = ax1 + b, ∀i = 1, n ⇔ b = - xia + y1; ∀i = 1, n Như vậy, điểm (xi; yi) mặt phẳng tương ứng với số đường thẳng b = - xia + yi mặt phẳng tham số a, b n điểm (xi; yi) i = 1, n thuộc đường thẳng mặt phẳng tương ứng với n đường thẳng mặt phẳng tham số a, b giao điểm điểm giao a, b Chính hệ số xác định phương trình đường thẳng mà điểm nằm vào 63 * Phương pháp: - Xây dựng mảng số [a, b] gán giá trị ban đầu cho tất phân tử mảng - Với (xi; yi) ∀a, b số phần tử mảng thoả mãn b = - xia + yi tăng giá trị phân tử mảng tương ứng lên - Tìm phần tử mảng có giá trị lớn giá trị lớn tìm so với số phân tử lớn ngưìng θ cho trước ta kết luận điểm nằm đường thẳng đường thẳng có phương trình y = ax + b a, b tương ứng số phần tử mảng có giá trị lớn tìm được: Ví dụ: Cho điểm (0, 1); (1, 3); (2, 5); (3, 5); (4, 9) θ = 80% Hãy kiểm tra xem điểm cho có nằm đường thẳng hay khơng? Hãy cho biết phương trình đường thẳng có? - Lập bảng số [a, b] gán giá trị + (0, 1): b = + (1, 3): b = -a + + (2, 5): b = -2a + + (3, 5): b = -3a + + (4, 9): b = -4a + - Tìm phần tử lớn có giá trị 4/5 = 80% - Kết luận: điểm nằm đường thẳng Phương trình: y = 2x + 5.3.2 Biến đổi Hough cho đường thẳng tọa độ cực 5.3.2.1 Đường thẳng Hough tọa độ cực 64 ϕ y r x.cosϕ+y.sinϕ=r H x Hình 5.9 Đường thẳng Hough toạ độ cực Mỗi điểm (x,y) mặt phẳng biểu diễn cặp (r,ϕ) tọa độ cực Tương tự đường thẳng mặt phẳng biểu diễn cặp (r,ϕ) tọa độ cực với r khoảng cách từ gốc tọa độ tới đường thẳng ϕ góc tạo trục 0X với đường thẳng vng góc với nó, hình 5.9 biểu diễn đường thẳng hough tọa độ Decard Ngược lại, cặp (r,ϕ) toạ độ cực tương ứng biểu diễm đường thẳng mặt phẳng Giả sử M(x,y) mộ điểm thuộc đường thẳng biểu diễn (r,ϕ), gọi H(X,Y) hình chiếu gốc toạ độ O đường thẳng ta có: X= r cosϕ Y= r.sinϕ Mặt khác, ta có: OH.HA=0 Từ ta có mối liên hệ (x,y) (r,ϕ) sau: x*cosϕ+y*sinϕ= r Xét n điểm thẳng hàng tọa độ Đề có phương trình x*cosϕ0+y*sinϕ0= r0 Biến đổi Hough ánh xạ n điểm thành n đường sin tọa độ cực mà đường qua (r0,ϕ0) Giao điểm (r0,ϕ0) n đường sin xác định đường thẳng hệ tọa độ đề Như vậy, đường thẳng qua điểm (x,y) cho cặp (r,ϕ) có đường qua (x,y) có nhiêu cặp giá trị (r,ϕ) 5.3.2.2 Áp dụng biến đổi Hough phát góc nghiêng văn Ý tưởng việc áp dụng biến đổi Hough phát góc nghiêng văn dùng mảng tích luỹ để đếm số điểm ảnh nằm đường thảng không gian ảnh Mảng tích luỹ mảng hai chiều với số hàng mảng cho biết góc lệch ϕ đường thẳng số cột giá trị r khoảng cách từ gốc toạ độ tới đường thẳng Sau tính tổng số điểm ảnh nằm đường thẳng song song theo 65 góc lệch thay đổi Góc nghiêng văn tương ứng với góc có tổng gía trị mảng tích luỹ cực đại Theo biến đổi Hough, đường thẳng mặt phẳng tương ứng biểu diễn cặp (r,ϕ) Giả sử ta có điểm ảnh (x,y) mặt phẳng, qua điểm ảnh có vô số đường thẳng, đường thẳng lại cho cặp (r,ϕ) nên với điểm ảnh ta xác định số cặp (r,ϕ) thoả mãn phương trình Hough x.cosϕ+y.sinϕ=r1 Hough[ϕ][r1]=3 ϕ y x.cosϕ+y.sinϕ=r2 Hough[ϕ][r1]=4 x Hình 5.10 Ứng dụng biến đổi Hough phát góc Hình vẽ minh hoạ cách dùng biến đổi Hough để phát góc nghiêng văn Giả sử ta có số điểm ảnh, điểm đáy hình chữ nhật ngoại tiếp đối tượng lựa chọn từ bước trước Ở đây, ta thấy mặt phẳng có hai đường thẳng song song Đường thẳng thứ có ba điểm ảnh nên giá trị mảng tích luỹ 3, đường thẳng thứ hai có gia trị mảng tích luỹ Do đó, tổng giá trị mảng tích luỹ cho góc ϕ trường hợp Gọi Hough[360][Max] mảng tích lũy, giả sử M N tương ứng chiều rộng chiều cao ảnh, ta có bước q trình áp dụng biến đổi Hough phát góc nghiêng văn sau: + Bước 1: Khai báo mảng số Hough[ϕ][r] với ≤ ϕ ≤ 3600 0≤ r ≤ M * M + N * N + Bước 2: Gán giá trị khởi tạo cho phần tử mảng + Bước 3: Với cặp (x,y) điểm đáy hình chữ nhật ngoại tiếp đối tượng - Với ϕi từ đến 360 tính giá trị ri theo công thức ri= x.cosϕi+y.sinϕ - Làm tròn giá trị ri thành số nguyên gần r0 - Tăng giá trị phần tử mảng Hough[ϕi][r0] lên đơn vị 66 + Bước 4: Trong mảng Hough[ϕ][r] tính tổng giá trị phần tử theo dòng xác định dòng có tổng giá trị lớn Do số phần tử phần tử mảng Hough[ϕ0][r0] số điểm ảnh thuộc đường thẳng x.cosϕ0+y.sinϕ0= r0 tổng số phần tử hàng tổng số điểm ảnh thuộc đường thẳng tương ứng biểu diễn góc ϕ hàng Do đó, góc nghiêng tốn văn hàng có tổng giá trị phần tử mảng lớn 67 Phụ lục 1: MỘT SỐ ĐỊNH DẠNG TRONG XỬ LÝ ẢNH Hiện giới có 50 khuôn dạng ảnh thông dụng Sau số định dạng ảnh hay dùng trình xử lý ảnh Định dạng ảnh IMG Ảnh IMG ảnh đen trắng, phần đầu ảnh IMG có 16 byte chứa thơng tin: • byte đầu: dùng để đánh dấu định dạng ảnh Giá trị byte viết dạng Hexa: 0x0001 0x0008 0x0001 • byte tiếp theo: chứa độ dài mẫu tin Đó độ dài dãy byte kề liền mà dóy lặp lại số lần Số lần lặp lưu byte đếm Nhiều dãy giống lưu byte • byte tiếp: mơ tả kích cỡ pixel • byte tiếp: số pixel dòng ảnh • byte cuối: số dòng ảnh ảnh Ảnh IMG nén theo dòng, dòng bao gồm gói (pack) Các dòng giống nén thành gói Có loại gói sau: • Loại 1: Gói dòng giống Quy cách gói tin sau: 0x00 0x00 0xFF Count Ba byte cho biết số dãy giống nhau, byte cuối cho biết số dòng giống • Loại 2: Gói dãy giống Quy cách gói tin sau: 0x00 Count Byte thứ hai cho biết số dãy giống nén gói Độ dài dãy ghi đầu tệp • Loại 3: Dãy Pixel không giống nhau, không lặp lại khơng nén Quy cách gói tin sau: 0x80 Count Byte thứ hai cho biết độ dài dãy pixel không giống không nén 68 • Loại 4: Dãy Pixel giống Tuỳ theo bít cao byte bật hay tắt Nếu bít cao bật (giá trị 1) thỡ gói nén byte gồm bít 0, số byte nén tính bít thấp lại Nếu bớt cao tắt (giỏ trị 0) gói nén byte gồm tốn bít Số byte nén tính bít lại Các gói tin file IMG đa dạng ảnh IMG ảnh đen trắng, cần bít cho pixel thay nói Tồn ảnh có điểm sáng tối tương ứng với giá trị Tỷ lệ nén kiểu định dạng cao Định dạng ảnh PCX Định dạng ảnh PCX định dạng ảnh cổ điển Nó sử dụng phương pháp mó hoỏ loạt dài RLE (Run – Length – Encoded) để nén liệu ảnh Quá trỡnh nộn giải nộn thực dũng ảnh Thực tế, phương pháp giải nén PCX hiệu so với kiểu IMG Tệp PCX gồm phần: đầu tệp (header), liệu ảnh (Image data) bảng màu mở rộng Header tệp PCX có kích thước cố định gồm 128 byte phân bố sau: • byte: kiểu định dạng.Nếu PCX/PCC ln có giá trị 0Ah • byte: version sử dụng để nén ảnh, có giá trị sau: + 0: version 2.5 + 2: version 2.8 với bảng màu + 3: version 2.8 hay 3.0 khơng có bảng màu + 5: version 3.0 cố bảng màu • byte: phương pháp mã hố Nếu mã hố theo phương pháp BYTE PACKED, ngược lại phương pháp RLE • byte: Số bít cho điểm ảnh plane • word: toạ độ góc trái ảnh Với kiểu PCX có giá trị (0,0), cũn PCC khác (0,0) • word: toạ độ góc phải • word: kích thước bề rộng bề cao ảnh 69 • word: số điểm ảnh • word: độ phân giải hình • word • 48 byte: chia thành 16 nhóm, nhóm byte Mỗi nhóm chứa thơng tin ghi màu Như ta có 16 ghi màu • byte: khơng dùng đến ln đặt • byte: số bớt plane mà ảnh sử dụng Với ảnh 16 màu, giá trị 4, với ảnh 256 mầu (1pixel/8bits) số bít plane lại • byte: số bytes cho dòng qt ảnh • word: kiểu bảng màu • 58 byte: không dùng Định dạng ảnh PCX thường dùng để lưu trữ ảnh thao tác đơn giản, cho phép nén giải nén nhanh Tuy nhiên, cấu trúc cố định, nên số trường hợp làm tăng kích thước lưu trữ Cũng nhược điểm mà số ứng dụng sử dụng kiểu định dạng khác mềm dẻo hơn: định dạng TIFF (Targed Image File Format) mô tả Định dạng ảnh TIFF Kiểu định dạng TIFF thiết kế để làm nhẹ bớt vấn đề liên quan đến việc mở rộng tệp ảnh cố định Về cấu trúc, gồm phần chính: • Phần Header(IFH): cú tất cỏc tệp TIFF gồm byte: + word: kiểu tạo tệp máy tính PC hay máy Macintosh Hai loại khác lớn thứ tự byte lưu trữ số dài hay byte Nếu trường có giá trị 4D4Dh ảnh cho máy Macintosh, 4949h máy PC + word: version từ ln có giá trị 42 đặc trưng file TIFF không thay đổi + word: giá trị Offset theo byte tính từ đầu tới cấu trúc IFD cấu trúc thứ hai file Thứ tự byte phụ thuộc vào dấu hiệu trường 70 • Phần thứ 2(IFD): Khơng sau cấu trúc IFH mà vị trí xác định trường Offset đầu tệp Có thể có hay nhiều IFD tồn file Một IFD bao gồm: + byte: chứa DE ( Directory Entry) + 12 byte DE xếp liên tiếp, DE chiếm 12 byte + byte: chứa Offset trỏ tới IFD Nếu IFD cuối trường có giá trị • Phần thứ 3: DE: DE có dộ dài cố định gồm 12 byte chia làm phần: + byte: dấu hiệu mà tệp ảnh xây dựng + byte: kiểu liệu tham số ảnh Có kiểu tham số bản: 1: BYTE (1 byte) 2: ASCII (1 byte) 3: SHORT (2 byte) 4: LONG (4 byte) 5: RATIONAL (8 byte) + byte: trường độ dài chưa số lượng mục kiểu liệu Nó khơng phải tổng số byte cần thiết để lưu trữ Để có số liệu ta cần nhân số mục với kiểu liệu dùng + byte: Offset tới điểm bắt đầu liệu liên quan tới dấu hiệu, tức liên quan với DE lưu trữ vật lý với nằm vị trí file Dữ liệu chứa tệp thường tổ chức thành nhóm dòng (cột) quét liệu ảnh Cách tổ chức làm giảm nhớ cần thiết cho việc đọc tệp Việc giải nén thực theo kiểu khác lưu trữ byte dấu hiệu nén 71 Định dạng file ảnh BITMAP Mỗi file BITMAP gồm đầu file chứa thông tin chung file, đầu thông tin chứa thông tin ảnh, bảng màu mảng liệu ảnh Khuôn dạng cho sau: BITMAPFILEHEADER bmfh; BITMAPINFOHEADER bmih; RGBQUAD aColors[]; BYTE aBitmapBits[]; Trong đó, cấu trúc định nghĩa sau: typedef struct tagBITMAPFILEHEADER { UINT DWORD UINT UINT DWORD /* bmfh */ bfType; bfSize; bfReserved1; bfReserved2; bfOffBits; } BITMAPFILEHEADER; typedef struct tagBITMAPINFOHEADER { DWORD LONG LONG WORD WORD DWORD DWORD LONG LONG DWORD DWORD /* bmih */ biSize; biWidth; biHeight; biPlanes; biBitCount; biCompression; biSizeImage; biXPelsPerMeter; biYPelsPerMeter; biClrUsed; biClrImportant; } BITMAPINFOHEADER, *LPBITMAPINFOHEADER; với biSize kích thước BITMAPINFOHEADER biWidth Chiều rộng ảnh, tính số điểm ảnh biHeight Chiều cao ảnh, tính số điểm ảnh 72 biPlanes Số plane thiết bị, phải biBitCount Số bit cho điểm ảnh biCompression Kiểu nén biSizeImage Kích thước ảnh tính byte biXPelsPerMeter độ phân giải ngang thiết bị, tính điểm ảnh met biYPelsPerMeter độ phân giải dọc thiết bị, tính điểm ảnh met biClrUsed Số lượng màu thực sử dụng biClrImportant Số lượng màu cần thiết cho việc hiển thị, tất màu cần để hiển thị Nếu bmih.biBitCount > mảng màu rgbq[] trống, ngược lại mảng màu có 2

Ngày đăng: 30/01/2020, 09:17

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan