Page 185 -
P. 185
โครงการหนังสืออิเล็กทรอนิกส์ เฉลิมพระเกียรติสมเด็จพระเทพรัตนราชสุดาฯ สยามบรมราชกุมารี
176
ภาพและใหความถี่สูงแสดงตามมุมขอบของภาพ ดังรูปที่ 6.11(ข) การเลื่อนทําไดโดย
x+y
คูณสัญญาณอินพุตดวย (-1) กอนทําการแปลงฟูริเยร วิธีการแสดงผลแบบที่ให
คาความถี่ต่ําอยูกลางภาพนั้นเรียกวา การแสดงผลแบบออฟติคอล (optical
representation) การแสดงผลแบบนี้สามารถทําใน MATLAB ไดดวยคําสั่ง fftshift(.)
x+y
โดยไมจําเปนตองคูณสัญญาณอินพุตดัวย (-1) กอนการแปลง ตัวอยางโปรแกรม
ดานลางเปนการแปลงฟูริเยรภาพลายนิ้วมือ จากภาพตนฉบับภาพลายนิ้วมือในภาพที่
6.13(ก) จะเห็นวารายละเอียดของลายนิ้วมือมนุษยมีการเปลี่ยนแปลงความเขมแสงที่
เปนจังหวะคอนขางสม่ําเสมอใกลเคียงกัน ดังนั้นการวิเคราะหหาสัญญาณรบกวน
ภายในภาพจึงทําไดงายเมื่อทําการวิเคราะหภาพลายนิ้วมือในโดเมนความถี่ ผลลัพธที่
ไดจากการแปลงฟูริเยรแสดงในรูปที่ 6.13(ข) และ 6.13(ค)
>> im = imread ('fp_original.jpg'); %อานภาพอินพุต
>> fim = abs(fft2(im)); % หาขนาดของ FFT ของภาพอินพุต
>> figure; colormap(gray);
>> imagesc(1+log(fim); % แสดงคาสเปคตรัมที่ไดแบบมาตราฐาน
>> figure;colormap(gray);
>> imagesc(1+log(fftshift(fim)));% แสดงคาสเปคตรัมแบบออฟติคอล
นอกจากนั้นคาสัมประสิทธิ์ดีซีที่ไดจากการแปลงฟูริเยรมักมีคาสูงมากเมื่อเทียบกับคา
สัมประสิทธิ์ฟูริเยรตัวอื่นๆ ถาเราแสดงคาสัมประสิทธิ์ที่ไดโดยตรง เราจะเห็นแต
คาสัมประสิทธฺดีซีเทานั้น ไมเห็นรายละเอียดการเปลี่ยนแปลงของสัมประสิทธิ์ตัว
อื่นๆ คือ มักจะเห็นแตจุดสวางบริเวณกลางภาพ ในกรณีนี้เราตองทําการปรับคาฟูริ
เยรสเปคตรัมที่คํานวณไดกอนการแสดงผล การปรับลดทําไดหลายวิธี วิธีที่นิยมมี
สามวิธีดังนี้
วิธีแรกเปนการแสดงผลในสเกลลอก นั้นคือ จะแสดงคา log(1+F(u,v)) แทน