วันเสาร์ที่ 30 กรกฎาคม พ.ศ. 2559

เมนู Process with ImageJ [ตอนที่ 6] Enchance Contrast เครื่องมือการหาค่าสูงสุด

Enchance Contrast...


การทำ Enhance Contrast ด้วยการใช้ histogram stretching หรือ histogram equalization ทั้งสองวิธีการนี้อธิบายใน http://homepages.inf.ed.ac.uk/rbf/HIPR2/ และ

http://homepages.inf.ed.ac.uk/rbf/HIPR2/histeq.htm#1

โดยคำสั่งนี้จะไม่แจ้งค่า pixel ที่เป็นของ Normalize, Equalize Histogram, Normalize All n Slices (กรณีของ stack)

Saturated Pixels  พิจารณาจำนวน pixel ในภาพที่อนุญาตเป็นค่า saturated  เพิ่มค่าให้มากขึ้นหากต้องการเพิ่มค่า Contrast ค่านี้ควรมากกว่า 0 เพื่อป้องกันข้อผิดพลาดและ

ทำให้ histogram stretch ทำงานได้ดีขึ้น

Normalize ถ้าเลือกตัวเลือกนี้ ImageJ จะเริ่มคำนวณใหม่ค่า pixel ที่เป็นลำดับของ maximum จะถูกแปลงให้เหมาะกับกับ data type ของภาพนั้น เช่น ค่า 0-1.0 สำหรับภาพ

แบบ float images ค่า contrast ทีได้มีค่ากับการใช้เมนู 'Auto' option ในตัวเลือก Brightness/Contrast... [C] ยกเว้นภาพแบบ stact จะมีการปรับค่าที่เป็นอิสระต่อกันในแต่ละ

slice ค่า maximum range ของภาพ 8-บิต จะอยู่ระหว่าง 0-255 และ 0-65535 สำหรับภาพแบบ 16-บิต


ตัวอย่าง

ภาพที่ต้องการทำ Enchance

การเลือกเมนู

การตั้งค่า

ผลลัพธ์ภาพที่ปรับแล้วตัวแมลงจะสีเข้มขึ้น




เมนู Process with ImageJ [ตอนที่ 5] Find Maxima เครื่องมือการหาค่าสูงสุด

Find Maxima...


พิจารณาค่ามากสุดภายในภาพ และสร้างภาพขาวดำที่มีขนาดเท่ากันขึ้นมา หรือตามขนาดพื้นที่ที่เลือก
สำหรับภาพ RGB ค่า Maxima จะมาจาก luminance จะถูกเลือก เป็นค่าน้ำหนัก หรือ ค่าเฉลี่ยสี ขึ้นอยู่กับวิธีการตั้ง

ค่า Weight RGB to Grayscale Conversions ในเมนู Edit->Option->Conversion

การตั้งค่า


Noise Tolerance  เป็นการตั้งค่าความคงทนของค่า Maxima ด้วยการกำหนดค่าตัวเลขลงแล้วสังเกตผลลัพธ์ที่ได้โดยพื้นที่ที่ถูกเลือกจะต้องมีค่ามากกว่าค่าที่กำหนดไว้

Output Type ประกอบด้วย

Single Points ผลลัพธ์จะเป็นจุดต่อค่า maximum
Maxima Within Tolerance ทุก ๆ จุดที่สัมพันธ์กับการกำหนดค่า Noise Tolerance จะถูกเลือก
Segmented Particles  สุ่มค่า maximum จะส่วนของภาพที่ถูกแบ่งด้วย watershed
Point Selection  แสดงหลายจุดที่ถูกเลือก ด้วยค่าจุที่เป็น maximum
List แสดงจุดพิกัด XY ของแต่ละ maximum ในหน้าต่าง Result Window
Count แสดงการนับค่า maximum in the Result window
Exclude Edge Maxima  ไม่ให้ความสนใจบริเวณที่พื้นที่ประกอบด้วยค่า noise tolerance อยู่รอบ ๆ ซึงอาจจะเป็นขอบของภาพ
Above Lower Threshold หาค่า maxima จากค่า threshold ที่ต่ำเท่านั้น ส่วนค่า upper threshold ไม่สนใจ ถ้าผลลัพธ์ถูกเลือกด้วย Segmented Particles ถูกเลือกเป็น
Output Type ค่าที่น้อยกว่า ค่า threshold ต่ำสุด จะเป็นพื้นหลัง การตั้งค่านี้จะไม่ได้ผลหากภาพที่นำมาหานั้นเป็นภาพที่มีพื้นหลังสว่างมาก หรือภาพที่เลือก LUT เป็น inerted

Light Background  ถ้าภาพมีพื้นหลังสว่างมากเลือตัวเลือกนี้จะสามารถทำให้ได้ผลลัพธ์ที่ดีขึ้น

ภาพผลลัพธ์ที่เป็นภาพขาวดำ (binary image) ที่มีสี foreground 255 และ background 0 ด้วยการเลือก inverted หรือ normal LUT

จำนวนพื้นที่ของผลลัพธ์จะไม่ขึ้นอยู่กับ Output Type ที่เลือก พื้นที่ส่วนใหญ่จะถูกแบ่งด้วยเส้นขอบ สำหรับการหาค่า maximum

เมนู Find Maxima... ไม่สามารถทำงานกับภาพแบบ stack แต่สามาถใช้มาโคร FindStackMaxima หาผลลัพธ์ได้ โดยผลลัพธ์ที่ได้จะเป็นภาพ stack ใหม่


ตัวอย่างการใช้งาน

จากตัวอย่างเป็นการหาค่า Maxima แล้วแสดงผลเป็นพื้นที่ขอบเขต


ภาพที่ต้องการหาค่า Maxima

เลือกเมนู Find Maxima
ตั้งค่า โดยจากตัวนี้จะเลือกการแสดงผลเป็นแบบพื้นที่
ภาพผลการค่าหา Maxima และแสดงผลแบบเส้นแบ่งพื้นที่


วันศุกร์ที่ 29 กรกฎาคม พ.ศ. 2559

เมนู Process with ImageJ [ตอนที่ 4] Find Edges เครื่องมือการหาเส้นขอบ sobel

Find Edges


ใช้การหาขอบตามแบบของ Sobel ในภาพที่เลือก หรือส่วนที่พื้นที่ที่เลือก โดยใช้ตัว kernel ที่เป็น weight factor จำนวน 2 ตัว ใช้สำหรับการการหาขอบแนวตั้งและแนวนอน

ภาพผลลัพธ์จะเป็นการแสดงการหาขอบจากทั้งแนวตั้งและแนวนอนโดยหารากที่สองของผลบวกของแนวตั้งยกกำลังสอง และแนวนอนยกกำลังสอง

1 2 1
0 0 0
-1 -2 -1

1 0 -1
2 0 -2
1 0 -1

ตัวอย่าง


ภาพที่ต้องการหาขอบ
เปิดโปรแกรมพร้อมภาพที่ต้องการหาขอบ



เลือกเมนู Process->Find Edges
ผลลัพธ์ภาพที่ได้จากการหาขอบ


ภาพที่หาขอบได้ดีควรมีรายละเอียดในภาพไม่มากจนเกินไป

วันพฤหัสบดีที่ 28 กรกฎาคม พ.ศ. 2559

เมนู Process with ImageJ [ตอนที่ 3] Shapen เครื่องมือการเพิ่มความเปรียบต่าง หรือทำให้คมชัด

Shapen


เพิ่มความเปรียบต่าง (Contrast) และ ทำให้เด่นชัดขึ้น ในส่วนของภาพที่ถูกเลือก หรือ ส่วนพื้นที่ที่เลือกเอาไว้ แต่ก็มีผลทำให้จุดรบกวนคุณภาพของภาพหรือที่เรียกว่า noise ตัวกรองใช้ค่าคง (Factor) ที่ในการคูณ เพื่อแทนที่ค่า pixel เดิม ด้วยค่าน้ำหนักแต่ละค่าตามด้านล่าง
-1 -1 -1
-1 12 -1
-1 -1 -1

ตัวอย่าง



ภาพเริ่มแรกก่อนทำ Shapen


การเลือกเมนู


ผลลัพธ์การทำ Shapen ทั้งภาพ
การทำ Shapen บางส่วนของภาพ

จากภาพเป็นการเลือกใช้คำสั่ง 3 รอบ เพื่อให้เห็นความแตกต่างของการใช้งานคำสั่งในการเพิ่มความคมชัดของภาพ Shapen

วันพุธที่ 27 กรกฎาคม พ.ศ. 2559

เมนู Process with ImageJ [ตอนที่ 2] Smooth เครื่องมือการทำเบลอภาพ

Smooth [S]


เป็นคำสั่งช่วยในการเบลอภาพที่กำลังเปิดแอคทีฟอยู่ หรือส่วนที่กำลังเลือกเลือก ด้วยเทคนิคการแทนที่แต่ละ pixel ด้วย ค่าเฉลี่ยค่า pixel รอบข้าง ด้วยขนาดของพื้นที่ค่าเฉลี่ยคำนวณจากพิกเซลรอบข้าง ขนาด 3x3 พิกเซล


ตัวอย่าง


ภาพต้นแบบ

เลือกเมนู Smooth

ผลลัพธ์การทำ Smooth ทั้งภาพ

ผลลัพธ์การทำ Smooth บางส่วน เฉพาะส่วนที่เลือกของภาพ

ในการทำงาน Smooth จากภาพตัวอย่างนี้เป็นการกดเรียกใช้งานเมนูหลายรอบเพื่อให้เห็นความแตกต่างของการทำภาพเบลออย่างเห็นความแตกต่างที่มากยิ่งขึ้น