Việc triển khai MATLAB nằm trong câu trả lời này: https://dsp.stackexchange.com/a/14201/5737
1) Công thức wikipedia hơi quá chung chung.
2) Nếu bạn biết những điều cơ bản của biến đổi với Fourier thì về mặt thực nghiệm bạn sẽ biết rằng: Hình ảnh được xem như được hình thành bằng cách đặt một loạt các sóng hình sin có tần số khác nhau được định hướng theo mọi hướng. Mỗi "pixel" trong biến đổi cho chúng ta biết "cường độ" của sóng như vậy. Vị trí của "pixel" cho chúng ta biết tần số và hướng của sóng. Trong thực tế, người ta chỉ muốn chọn một số sóng nhất định, có tần số cụ thể và định hướng cụ thể.
Vậy là bạn đã có nó: Biến đổi Gabor là một trong nhiều bộ lọc được gọi là băng thông cho phép bạn "cắt" biến đổi Fourier và chỉ cách ly thông tin cụ thể. Một thông tin quan trọng khác là mỗi "pixel" Fourier là một giá trị phức tạp (phần thực và phần ảo)
3) Tham số: Hai tham số đã được hiển thị:
3.a) Tần số điều chỉnh f0hoặc điều chỉnh thời gian P0, hoặc là λthiết lập loại sóng xoang nào bộ lọc sẽ đáp ứng tốt nhất. (f= 1 /P0= 1 / λ hoặc là f= π/ λ tùy thuộc vào việc thực hiện cụ thể) Về cơ bản, nhỏ hơn P0có nghĩa là sóng xoang dày đặc hơn. Lớn hơnP0 nghĩa là sóng lớn hơn. P0 được tính bằng pixel (3, 5, 30, v.v. pixel) Không đi dưới 3 pixel hoặc xa hơn W/ 2 hoặc bạn nhận được hiệu ứng khó chịu. Wlà chiều rộng của hình ảnh, nếu hình ảnh là hình vuông. Bạn chỉ định điều này bằng cách sử dụng tham số P0 trong mã MATLAB.
3.b) Góc trung tâm. Những sóng này có thể có bất kỳ hướng. Bạn muốn chỉ chọn sóng ở góc cụ thể. Vì vậy, tham số thứ hai là góc điều chỉnh,θ0 hoặc là θtrong công thức của bạn. Thông thường, tính bằng radian. Định hướng trong mã MATLAB.
Người ta không thể cô lập chỉ một tần số nhất định hoặc một định hướng nhất định. (Tìm kiếm nguyên lý không chắc chắn trong sách giáo khoa. Có, tương tự như trong vật lý) Nhưng người ta có thể điều chỉnh bao nhiêu tần số gần đó sẽ bị rò rỉ. Hai tham số tiếp theo xác định rằng:
3.c) Δ F, băng thông tần số thể hiện bằng quãng tám. Các giá trị hữu ích, 1,5, 2, 3. Giá trị lớn hơn có nghĩa là thu được dải tần số rộng hơn. Có một mức giá cho một băng thông chặt chẽ hơn, một địa phương hóa không gian nghèo hơn. Tại sao, một lần nữa, sách giáo khoa. FBW trong mã MATLAB.
3.d) Δ θbăng thông góc. Thể hiện bằng radian.π/ 3 hoặc là π/ 2hoạt động tốt ABW trong mã MATLAB.
Mối quan hệ giữa Δ f, Δθ từ mã MATLAB và σ, γ từ Wikipedia có một công thức nhưng không cần thiết để hiểu Gabor. ψ một lần nữa không quan trọng đối với sự hiểu biết cơ bản.
Vì vậy, bạn có nó: Xtừ Wikipedia là một ma trận 2D gồm các số chứa mặt nạ tích chập. Bạn lấy hình ảnh gốc, lọc nó bằng mặt nạ chập và lấy một hình ảnh khác. Hình ảnh mới này là "phản hồi Gabor" cho hình ảnh gốc.
Mã MATLAB thực hiện hai bước này với nhau. Xây dựng bộ lọc Gabor với các tham số đã chỉ định và thực hiện tích chập. Kết quả ReConv, ImConv là các câu trả lời. Mỗi "pixel" phản hồi có một phần thực và một phần ảo. Nếu bạn muốn sử dụng mã này, bạn thường phải tính năng lượng cho phản hồi:E= =một2+b2------√ Ở đâu một là phần thực sự của phản hồi (ReConv) và b là phần tưởng tượng (ImConv), cho mỗi pixel.
Ở đó bạn có nó: 1) Xây dựng bộ lọc Gabor chỉ định P0,θ0, Δ f, Δ θ
2) Kết hợp hình ảnh của bạn với bộ lọc. Bạn sẽ nhận được hai giá trị cho mỗi pixel. 3) Tính năng lượngE và lấy cường độ phản hồi cho từng pixel trong ảnh gốc
Một trực giác khác: Giả sử bạn muốn chọn các cạnh trải dài theo hướng vuông góc với π/ 6và chiều rộng nhất định là 20 pixel. Bạn có thể xây dựng bộ lọc Gabor vớiP0≈ 20 ,θ0= π/ 6,Δf= 2 , delta q = p i / 2. HÃY CHĂM SÓC rằng không có mối quan hệ bình đẳng giữa kích thước cạnh của bạn vàP0tham số. Bạn nên thử các giá trị khác nhau và xem những gì hoạt động tốt nhất. Các tham số khác (Δ f, Δ θ) chạm vào chúng khi bạn có một số kinh nghiệm điều chỉnh hai cái đầu tiên.
Hy vọng nó giúp!
Cristi
Cập nhật
Đây là một trang web cho phép bạn chơi một chút với các tham số Gabor và lưu ý kết quả: http://www.cogsci.nl/pages/gabor-generator.php
Sau khi xem nhanh, cả băng thông góc và băng thông góc được liên kết với nhau dưới dạng "Độ lệch chuẩn tính bằng pixel ... cho đường bao Gauss". Phần còn lại của các tham số được xác định dễ dàng. Tuy nhiên, lưu ý rằng có sự khác biệt về số! Ví dụ. pha có thể được biểu thị trong khoảng 0-1 hoặc 0-π khoảng thời gian.