Page 136 -
P. 136

โครงการหนังสืออิเล็กทรอนิกส์ เฉลิมพระเกียรติสมเด็จพระเทพรัตนราชสุดาฯ สยามบรมราชกุมารี







                                                                                                       127

                                   สัมประสิทธิ์ของมาสค  ขอแตกตางระหวางการกรองแบบเชิงเสนกับแบบไมเชิงเสน

                                   อยูที่วิธีการคํานวณที่เลือกใช   โดยการกรองแบบเชิงเสนจะทําการคํานวณแบบเชิง
                                   เสน คือ การบวกผลคูณระหวางสัมประสิทธิ์มาสคกับคาความสวางใตมาสค ในขณะ

                                   ที่การกรองแบบไมเชิงเสนจะทําการคํานวณแบบไมเชิงเสน เชน การหาคาความสวาง

                                   สูงสุดหรือต่ําสุดใตมาสค  เปนตน


                                   คําสั่งพื้นฐาน MATLAB ที่ใชในการกรองแบบไมเชิงเสนมีสองคําสั่ง คือ nlfilter(.)

                                   และ colfilt(.) คําสั่งทั้งสองคําสั่งจะทําการเลื่อนมาสคไปตามจุดภาพภายในรูปแลวทํา

                                   การคํานวณตามฟงกชัน func ที่กําหนดขึ้น รูปแบบการทั่วไปสําหรับการกรองภาพ

                                   ใชงานคําสั่ง nlfilter เปนดังนี้


                                                           B = nlfilter(A, [m n], func)


                                   โดยคําสั่งจะทําการเลื่อนมาสคขนาด m × n บนเมตริกซภาพ A แลวคํานวณคาความ

                                   สวางใหมตามสมการะะบุในฟงกชัน func  คําสั่งนี้จะทํา zero padding  ใหอยาง

                                   อัตโนมัติถาจําเปน  โปรแกรมดานลางแสดงตัวอยางการใชงานคําสั่ง nlfilter(.)  โดย
                                   คําสั่งในบรรทัดที่สองจะทํา max filter  กับภาพ A  นั้นคือ  คําสั่งจะแทนที่คาความ

                                   สวางของจุดภาพดวยคาความสวางสูงสุดที่อยูภายใตมาสคขนาด 3 × 3 สวนคําสั่งใน

                                   บรรทัดที่สามจะทํา min filter  กับภาพ A  โดยคําสั่งจะแทนที่คาความสวางของ

                                   จุดภาพดวยคาความสวางต่ําสุดที่พบภายใตมาสคขนาด 3 × 3 ภาพผลลัพธที่ไดหลัง

                                   การทํา max filter  จะมีคาความสวางภาพมากขึ้น  ในขณะที่ min filter  จะทําใหคา
                                   ความสวางของภาพผลลัพธต่ําลงดังแสดงในภาพที่ 4.16



                                      >>A = imread(‘roadPole.jpg’);
                                      >>val_max = nlfilter(A, [3,3], ‘max( x(:) )’;

                                      >>val_min = nlfilter(A, [3,3], ‘min( x(:) )’;
   131   132   133   134   135   136   137   138   139   140   141