Analyze Particles…
คำสั่งนี้จะนับ และ วัด วัตถุสำหรับภาพขาวดำ หรือภาพที่มี threshold (Image->Adjust->Threshold...[T] หรือ Color Threshold...) การประมวลผลสามารถทำได้ทั้งภาพ หรือ เฉพาะส่วนที่เลือก (Selection)
หลักการทำงานด้วยการหาขอบบนภาพ หรือส่วนที่เลือกเอาไว้ หากส่วนของวัตถุโดยใช้เครื่องมือ Wand Tool วัดค่าโดยใช้ Measure...[m] เติมค่าให้มองไม่เห็น แล้วเริ่มหาใหม่ จนหมดทั้งส่วนที่เลือก หรือทั้งไฟล์ หากต้องการยกเลิกการประมวลผล กดปุ่ม Esc
Size ส่วนของพื้นที่ที่ต้องการประมวลผล ค่าจะอยู่ช่วง 0-Infinity สำหรับพื้นที่ของภาพประมวลผลเป็นจัตตุรัส แต่หากเลือก Pixel Units ก็จะใช้หน่วยเป็น pixels หากกรอกค่าเป็นตัวเลขเดี่ยวไม่ใช่ช่วง จะใช้ค่าที่กำหนดและต่ำกว่าลงมา
Particle Analyzer (Analyze->Analyze Particles…) เป็นจุดเด่นของภาพที่สามารถส่วนด้วยขนาด (Size) ที่เหมาะสมตามต้องการ และ ช่วงวงกลม (Circularity ranges) หรือ ส่วนที่เป็นพื้นที่ปิด สามารถติดตามด้วยขอบ หรือ ด้วย การเติมค่าพื้นผิวที่ต่อเนื่องกัน (flood filling) (รวม Holes checkbox)
Circularity ส่วนที่กำหนดไว้นอกขอบเขตที่กำหนดที่ไม่สนใจ Circularity (4pi x ([area]/[Perimeter]2)) ดูเพิ่มเติมจากการตั้งค่า Set Measurements... ช่วงจาก 0 (infinitely elongated polygon) ถึง 1 (perfect circle)
Show แสดงชุดคำสั่งสำหรับการแสดงผลหลังจากวิเคราะห์เรียบร้อยแล้ว ขนาด สี พื้นหลังของข้อความ สามารถตั้งค่าได้ที่ Image->Overlay->Labels... สำหรับภาพที่ไม่มีส่วนของ Overlay (non-Overlay) สามารถกำหนดค่าได้ด้วยมาโคร (marcro) ด้วยการเรียกคำสั่ง call(‘ij.plugin.filter.ParticleAnalyzer.setFontSize”, size); และ call(“ij.plugin.filter.ParticleAnalyzer.setLineWidth”, width); หรือ ParticleAnalyzer.setFontSize(size); ParticleAnalyzer.setLineWidth(width); ในคำสั่งสคริป หรือ plugin
ภาพ
Nothing ทั้งภาพหรือ Overlay จะแสดงส่วนของการ analyze ถ้าไม่มีผลลัพธ์จะแสดงหน้าต่างว่างออกมา
Outlines สำหรับภาพแบบ 8-bit ประกอบด้วยจำนวนโครงร่างที่วัดได้แต่ละส่วน (ระดับเทา : Outlines:0; Labels:1 Background:255) ถ้าเลือก situ ภาพผลลัพธ์จะแทนที่ภาพเร่ิมต้น
Bare Outlines ภาพ 8-bit ที่ประกอบด้วยโครงร่างง่าย ๆ จากการวัดที่ไม่ีข้อความกำกับ Label (ระดับเทา: Outlines:0 Background:255) ถ้าเลือก situ ภาพต้นฉบับจะถูกบันทึกแทนที่ด้วยภาพผลลัพธ์
Masks ภาพ 8-bit ที่ประกอบส่วนของการเติมพื้นโครงร่าง (ระดับเทา: Mask:0; Background:255) ถ้าเลือก situ ภาพเร่ิมต้นจะถูกแทนที่ด้วยภาพที่ประมวลผลใหม่
Ellipses ภาพ 8-bit ประกอบด้วยวงรีที่เต็มวง (Edit->Selection->Fit Ellipse) แต่ละการวัดนั้น (ระดับเทา: Ellipses: 0; Background:255) ถ้าเลือก situ ภาพต้นแบบจะถุกแทนที่ด้วยภาพผลลัพธ์
Count Masks ภาพแบบ 16-bit ประกอบด้วยการเติมพื้นผิวที่โครงร่างด้วยค่าระดับเทา จะเป็นส่วนของตัวเลข ถ้าเลือก situ ภาพต้นแบบจะถูกแทนที่ด้วยภาพผลลัพธ์
Overlay Outlines แสดงขอบเขตการวัดในส่วนของภาพที่เป็น Overlay ลบ Overlay ก่อนหน้านี้ออก
Overlay Masks แสดงขอบเขตที่มีการเติมค่าพื้นหลังจากการวัดภาพที่เป็น Overlay และลบ Overlay ก่อนหน้านี้ออกไป
Display Results ถ้าเลือกตัวเลือกนี้ การวัดแต่ละส่วนจะแสดงในตารางผลลัพธ์ (Results Table)
Clear Results ถ้าเลือกตัวเลือกนี้เอาไว้การวัดค่าก่อนหน้านี้ในรายการ Results Table จะถูกล้างค่าออกทั้งหมด
Summarize ถ้าเลือกตัวเลือกนี้ ส่วสนของการนับ จำนวนพื้นที่ ขนาดเฉลี่ย และค่าต่างใน Set Measurements... จะแสดงค่าสรุปในตาราง ถ้าเป็นภาพเดี่ยว การสรุปผลจะอยู่ในตารางเดียวกัน ส่วนภาพแบบ stack ส่วนสรุปจะแสดงแยกออกมาตรง title จะมีข้อความว่า Summary of [stack title] เพิ่มเติมตารางนี้จะปรับปรุงค่าทุกครั้งที่มีการเรียกใช้งานใหม่
Add to Manager ถ้าเลือกตัวเลือกนี้ การวัดส่วน จะถูกส่งไปไว้ใน ROI Manager...
Exclude on Edges ถ้าเลือกตัวเลือกนี้ส่วนที่ติดกับเส้นขอบของภาพ หรือส่วนที่เลือกเอาไว้ จะไม่สนใจในการประมวลผล
Include Holes ถ้าเลือกตัวเลือกนี้ พื้นที่ภายในจะรวมพิจารณาด้วย หากยกเลิกตัวเลือกนี้จะประมวลผลภายในพื้นที่วงวงกลมที่ว่างด้วย ถ้าเลือกใช้งานจะพิจารณาเส้นขอบ ถ้ายกเลิกจะพิจารณาตามพื้นที่ที่เชื่อหากัน
Record Starts ตัวเลือกนี้จะอนุญาตให้ plugins และ มาโคร เรียกใช้งานซ้ำโดยใช้ฟังก์ชัน doWan(x,y) ได้ ตัวอย่างนี้ จะเป็นตัวอย่างการเรียกใช้งาน
// This macro demonstrates how to erase non-circular objects
requires("1.29n");
run("Blobs (25K)");
setThreshold(125, 248);
run("Set Measurements...", "area perimeter circularity decimal=3");
run("Analyze Particles...", "minimum=1 maximum=999999 bins=20 show=Nothing clear record");
for (i=0; i<nResults; i++) {
x = getResult('XStart', i);
y = getResult('YStart', i);
circularity = getResult('Circ.', i);
if (circularity<0.85) {
doWand(x,y);
run("Clear");
}
}
run("Select None");
In situ Show ถ้าเลือกตัวเลือกนี้ ภาพต้นฉบับจะถูกแทนที่ด้วยภาพขาวดำที่เลือกจากเมนู drop-down
Help ดูเพิ่มเติมจาก http://imagej.nih.gov/ij/docs/menus/analyze.html#ap
ตัวอย่าง
จากภาพ
การเลือกเมนู
การตั้งค่า
หลังจากนั้นกดปุ่ม OK จะได้ผลลัพธ์จำนวน 5 ผลลัพธ์ดังภาพดังนี้
ตาราง Results |
ตาราง Summary |
ROI Manager |
แสดงผลในแบบ Outline |
แสดง Label สำหรับวัตถุที่เจอ |
ขอบคุณมากๆครับ สำหรับบนความดีๆ
ตอบลบ