Thực hành xử lý ảnh
Thực hành xử lý ảnh 1 Phần I : Khai thác phần mềm ScionImage Bài 1. Các phép toán xử lý điểm ảnh 1.1 Các phép xử lý với ảnh đa mức xám a) Phân tích sự phân bố mức xám Từ ảnh ban đầu ta thực hiện biến đổi độ tương phản bằng cách sử dụng cửa sổ Map, mỗi lần dùng con chuột thay đổi đường đồ thị, mức xám của ảnh cũng sẽ thay đổi theo. KL: Mức xám của ảnh tập chung ở miền có mức xám cao nên ảnh trên là ảnh sáng (lược đồ nằm bên phải). Muốn thay đổi độ tương phản hoặc độ sáng của ảnh thì ta có thể biến đổi Histogram của ảnh để thu được ảnh mới mà ta mong muốn. b) Biến đổi độ tương phản bằng các phép toán số học. Phép cộng: Thực chất là việc thực hiện phép cộng các giá trị mức xám của từng điểm ảnh với một hằng số. Với giá trị hằng số được chọn thích hợp nó sẽ làm cho độ tương phản của ảnh tốt hơn. Nhìn chung, kết quả thu được là một ảnh mới có số màu tối hơn ảnh ban đầu, tất cả các vùng ảnh có chiều hướng đen dần. Do đó, khi giá trị hằng số được chọn quá lớn sẽ làm cho ảnh bị tối, dẫn đến làm cho độ tương phản của ảnh kém vì tại các điểm ảnh có giá trị mức xám cao, sau khi cộng thêm một hằng số chúng đều đạt đến giá trị tối đa là 255? Phép nhân: Đây là việc thực hiện phép nhân các giá trị mức xám của từng điểm ảnh với một hằng số. Với giá trị hằng số được chọn thích hợp nó sẽ làm cho độ tương phản của ảnh tốt hơn. Các phép trừ và chia chỉ là các bước thực hiện đảo của hai phép công và nhân Như vậy, xử lý điểm ảnh (thông qua các phép toán) thực chất là các ánh xạ nhằm biến đổi giá trị của một điểm và chỉ dựa vào giá trị của chính nó mà không quan tâm tới các giá trị của các điểm ảnh khác. Một cách toán học, ánh xạ đó được định nghĩa như sau: ảnh nhị phân ảnh ban đầu Thực hành xử lý ảnh 2 v(m,n)=f(u(m,n)) trong đó: u(m,n) thể hiện giá trị cường độ sáng tại toạ độ (m,n); v(m,n) là giá trị cường độ sáng sau phép biến đổi; f là hàm biến đổi, nó có thể là liên tục hoặc rời rạc. c) Tạo ảnh nhị phân từ ảnh đa mức xám Để tạo ảnh nhị phân ta dùng menu Process/Binary/Make Binary (kết quả như hình trên). Trước đó phải thực hiện Options/Threshol d) ảnh giả màu Kỹ thuật giả màu thực chất là biến từ ảnh đơn màu thành ảnh màu và được thực hiện bởi một phép biến đổi một ma trận dữ liệu thành 3 ma trận dữ liệu tương ứng với 3 màu khác nhau. Mức xám của mỗi điểm ảnh sẽ trở thành một điểm ảnh màu có giá trị màu là sự tổng hợp của 3 màu RGB. Giá trị của ba màu RGB chính là giá trị mức xám. Ví dụ, tại điểm ảnh có giá trị mức xám bằng 0 sẽ được thay thế bởi 3 màu đỏ, lục, lam với các giá trị lần lượt: R=255, G=255, B=255, ứng với màu trắng. Màu vàng là màu tổng hợp từ hai trong ba màu cơ bản (đỏ và lục). 1.2 ) Sử dụng các toán tử lôgic trong menu Process/arithmetic, cụ thể: Để làm mất hình dạng đối tượng trong ảnh. Đây thực chất là việc thực hiện xoá đối tượng có trên ảnh hay biến đổi cho mức xám của đối tượng ảnh (màu của đối tượng) trùng với màu nền. Để thực hiện phép biến đổi này ta có thể sử dụng phép toán ADD với hằng số bằng giá trị mức xám của màu nền. Để làm thay đổi mức xám của ảnh mà vẫn giữ nguyên màu nền, ta cũng thực hiện phép ADD với giá trị tùy chọn (nếu chọn giá trị vừa phải sẽ dễ so sánh với ảnh gốc) Mức xám của đối tượng bị thay đổi mà vẫn giữ nguyên màu nền Thực hành xử lý ảnh 3 Bài 2. Phân tích Histogram của ảnh ảnh ban đầu bị tối lý do là các mức xám phân bố không đồng đều. Để các chi tiết của ảnh rõ nét hơn ta thực hiện phép san bằng Histogram (sử dụng menu Process/Equalize). ảnh sau khi xử lý đã rõ hơn. Còn có một phương pháp khác để biến đổi độ tương phản của ảnh, đó là ùng Process/ Enhance Contrast . Tuy nhiên ảnh sau khi biến đổi gần giống với ảnh ban đầu. Các chi tiết của ảnh được thể hiện rõ nét hơn, tuy nhiên các đường biên của ảnh cũng cũng bị mờ đi sau phép cân bằng. Vì vậy trong xử lý ảnh, để có thể tăng cường các đặc tính của ảnh, người ta sử dụng các kỹ thuật cho phép nâng cao chất lượng ảnh, trong đó bên cạnh các phép xử lý cơ bản như biến đổi độ tương phản và Histogram, giảm nhiễu đối với ảnh còn sử dụng các phép biến đổi làm nổi biên ảnh (tăng cường độ nét) và khôi phục ảnh bị nhiễu phá huỷ. Biến đổi độ tương phản dùng hàm Gamma Việc sử dụng phương pháp biến đổi độ tương phản của ảnh áp dụng các hàm toán học cho ảnh có độ nét tốt hơn phương pháp ở trên. Độ tương phản biểu diễn sự thay đổi độ sáng của đối tượng so với nền hay còn gọi là độ nổi của ảnh so với nền. Với các phương pháp biến đổi độ tương phản sử dụng bảng tra LUT, cửa sổ MAP, ., đây thực chất là việc thực hiện biến đổi một cách tuyến tính các giá trị độ sáng của đối tượng và nền của ảnh, còn khi sử dụng các hàm toán học thì sự biến đổi trên ảnh là phi tuyến. Điều này được thấy rõ qua ảnh thu được thông qua phép biến đổi sử dụng hàm Gamma: sáng hơn, tiết ảnh được thể hiện rõ nét, ảnh không bị mờ đi sau phép biến đổi, trong khi qua phép cân bằng Histogram, ảnh sáng lên, các chi tiết của ảnh cũng được thể hiện rõ nhưng ảnh bị mờ (độ nét của ảnh không được đảm bảo). Dịch chuyển thang biểu diễn mức xám của ảnh -Dịch chuyển thang biểu diễn mức xám của ảnh cũng là một phép xử lý cho phép thay đổi độ tương phản của ảnh. Histogram của ảnh ban đầu ảnh sau khi san bằng Histogram Thực hành xử lý ảnh 4 Bài3: Phép biến đổi Fourier 3.1)Phép biến đổi Fourier với ảnh dạng đặc biệt ảnh trước khi biến đổi Biến đổi FFT của ảnh Biến đổi Fourier của ảnh thực chất là phép đổi không gian quan sát ảnh từ miền thời gian sang miền tần số Phổ của ảnh sẽ tuần hoàn với chu kỳ là kích thước của ảnh nên khi biểu diễn phổ của ảnh, ta chỉ cần biểu diễn trong một chu kỳ. Kết quả phép biến đổi Fourier của ảnh cho là dải phổ đối xứng và đều vì ảnh chỉ có hai mức xám. Trong trường hợp này tính chu kỳ của phổ có được do ảnh ban đầu có tính chu kỳ và hàm Cos là hàm tuần hoàn, nên kết quả (biểu diễn trong miền tần số) cũng tuần hoàn và vì vậy phổ ạt ược có tính chu kỳ. 3.2) Biến đổi Fourier của ảnh bị nhiễu Trong trường hợp này phổ của ảnh không có tính chu kỳ. Nhìn vào FFT của ảnh: phổ của ảnh phân bố đều trong không gian tần số (trong vùng tần thấp và cao). Trong ảnh ban đầu, mọi điểm có phân bố ngẫu nhiên Thực hành xử lý ảnh 5 đều tồn tại nhiễu, vì vậy nhiễu trong ảnh trên là nhiễu cộng ngẫu nhiên. Điều này cũng được thấy rõ qua ảnh phổ của nó, nhiễu cộng thường tập trung chủ yếu trong miền tần số cao trong khi các thông tin có ích tập trung chủ yếu trong miền tần số thấp (được thể hiện ậm hơn giữa hình). Thông thường, các kỹ thuật lọc tuyến tính ược sử dụng để làm giảm nhiễu cộng, cụ thể là dùng các bộ lọc thông thấp trong miền tần số để loại bỏ phần nhiễu và giữ lại các thông tin có ích. Lọc thông thấp đối với ảnh bị nhiễu. Bộ lọc thông thấp có tác dụng cắt bỏ các thành phần tần số cao do vậy nhiễu (nhiễu xung và nhiễu cộng) thuộc vùng này cũng sẽ bị loại bỏ. Quan sát FFT của ảnh sau khi qua bộ lọc thông thấp ta thấy các thông tin nhiễu bị loại bỏ chỉ còn các thông tin có ích, thể hiện trên ảnh phổ độ đậm của màu xám thay đổi, nó không còn phân bố đều như trước mà tập trung chủ yếu ở miền tần số thấp (tương ứng với các thông tin không bị nhiễu) còn ở vùng tần số cao độ ậm của màu xám bị nhạt i (tương ứng với thông tin bị nhiễu * ược loại bỏ). Lọc thông cao đối với ảnh nhiễu. Phổ của ảnh qua phép lọc này trái ngược với phổ của ảnh khi cho qua bộ lọc thông thấp, các thành phần tần số cao được giữ lại thay vì các thành phần tần số thấp. ảnh nhận được sau phép lọc: các thông tin có ích tập trung trong miền tần số thấp sẽ bị mất, chỉ còn lại các thông tin về nhiễu và biên ảnh, các chi tiết ảnh được nổi bật đặc biệt là các chi tiết có tần số không gian cao, các phần tử có tần số không gian cao được thể hiện sáng hơn trong ảnh, các phần tử có tần số không gian thấp sẽ bị tối i. do dó có thể thấy rằng hiệu quả của hai phương pháp lọc thông thấp và lọc thông cao trái ngược nhau. Bài 4. Vấn đề giảm nhiễu đối với ảnh. ảnh bị nhiễu FFT của ảnh bị nhiễu Thực hành xử lý ảnh 6 Để thực hiện bộ lọc trung bình ta sử ụng menu Process/Smooth Để thực hiện bộ lọc trung vị ta sử ụng menu Process/Rank Filters, sau đó chọn Meian. ảnh bị nhiễu trong trường hợp này khi sử ụng bộ lọc trung bình giảm được nhiều nhiễu hơn so với ùng bộ lọc trung vị (kích thước ảnh ở trên hơi nhỏ để có thể xác định được điều này). Nhìn vào ảnh nhiễu ta khó có thể biết đây là nhiễu phân bố ngẫu nhiên hay là nhiễu xung. Chính vì vậy để đánh giá bộ lọc nào có hiệu quả hơn trong trường hợp này ta phải căn cứ vào FFT của từng ảnh sau khi lọc Sau phép lọc trung bình, phép lọc này được lọc bớt nhiễu phân bố ngẫu nhiên ở vùng tần số thấp và nhiễu xung ở vùng tần số cao. Nhiễu của ảnh giờ chỉ còn tập trung ở những điểm có tần số trung bình. Phép lọc này được dàn đều các giá trị mức xám của các điểm ảnh, khuyếch đại tần xuất xuất hiện mức xám của các điểm ảnh ở vùng tần số thấp cũng như vùng tần số cao. Sau phép lọc trung vị, nhiễu xung đã bị loại bỏ bớt. Phép lọc này làm nổi bật rõ nét các vùng ảnh có tần số cao nhưng không làm ảnh hưởng đến các vùng ảnh có tần số thấp. Phép lọc này cũng được làm tăng cường độ nét của ảnh (ảnh không bị mờ --> thể hiện tính chất phi tuyến), làm nổi biên ảnh. Nếu căn cứ vào FFT của ảnh sau khi lọc ta thấy đối với trường hợp này phương pháp lọc trung bình hiệu quả hơn. Tuy nhiên trong một số trường hợp lọc trung vị lại có hiệu quả hơn. Lọc giảm nhiễu Gaussian Trong trường hợp này có thể chọn phép lọc Gauss. Phép lọc giảm nhiễu Gauss có tác dụng giảm cả nhiễu xung lẫn nhiễu cộng phân bố Gauss. Kết quả ảnh nhận được sau phép lọc Gauss, nhiễu giảm đi một cách đáng kể. Phổ của ảnh kết quả có phân bố đều hơn do các mức xám của ảnh sau khi lọc được phân bố lại một cách đồng đều trong phạm vi cửa sổ lọc. Các thành phần tần số cao và các điểm có biên độ lớn đều bị loại trừ. Sau khi dùng bộ lọc trung bình Sau khi dùng bộ lọc trung vị FFT của ảnh sau khi dùng bộ lọc trung bình Thực hành xử lý ảnh 7 Bài 5. Tách biên ảnh Để tách biên ảnh bằng toán tử Laplace ta ùng menu Process/Sharpen Để tách biên ảnh bằng toán tử Soble ta ùng menu Process/Fin Eges Biên được tách bằng toán tử Sobel ễ quan sát hơn so với toán tử Laplace Hình bên là ảnh được tách biên bằng toán tử Sobel sau khi tiền xử lý (dùng bộ lọc giảm nhiễu). So với ảnh không có giai đoạn tiền xử lý thì ảnh này có biên rõ hơn. ảnh ban đầu Tách biên bằng toán tử Laplace Tách biên bằng toán tử Sobel Thực hành xử lý ảnh 8 Bài 6. ảnh nhị phân và xử lý hình dạng ảnh Để tạo xương ảnh nhị phân ta chọn menu Process/Binary/Skeletonize Nếu không thực hiện tiền xử lý thì xương ảnh nhị phân vẫn còn những nét thừa do nhiễu tạo ra,dễ nhầm với chi tiết. ảnh nhị phân Xương ảnh tìm được có thực hiện tiền xử lý Xương ảnh tìm được không thực hiện tiền xử lý ảnh ban đầu ảnh nhị phân Xương ảnh tìm được có thực hiện tiền xử lý Xương ảnh tìm được không thực hiện tiền xử lý . tiền xử lý Xương ảnh tìm được không thực hiện tiền xử lý ảnh ban đầu ảnh nhị phân Xương ảnh tìm được có thực hiện tiền xử lý Xương ảnh tìm được không thực. Thực hành xử lý ảnh 1 Phần I : Khai thác phần mềm ScionImage Bài 1. Các phép toán xử lý điểm ảnh 1.1 Các phép xử lý với ảnh đa mức