Image File ReadingImport Medical Images into MATLAB
Import Medical Images into MATLAB
การอ่านไฟล์และการนำเข้ารูปภาพทางการแพทย์เพื่อใช้ในโปรแกรม MATLAB
การอ่านไฟล์และการนำเข้ารูปภาพทางการแพทย์เพื่อใช้ในโปรแกรม MATLAB
เป็นไฟลท์ภาพที่ได้มาจากกล้องจุลทรรศน์ Confocal Scanning Microscopes โดยภาพถ่ายที่ได้จะเป็นภาพ .lsm
Keyword fucntion : A = imread(filename, fmt)
ภาพนามสกุล LSM จะประกอบ 2 ส่วนคือ header (meta data) และ tiff จึงสามารถเปิดโดย LSM ToolBox และฟังชั่นใน Matlab ที่ชื่อว่า imread
ตามลำดับ
DICOM หรือ Digital Imaging and Communications in Medicine เป็นมาตรฐานของไฟล์รูปภาพทางการแพทย์ เช่น MRI, CT scan, CR และ Ultrasound เป็นต้น โดยอุปกรณ์เครื่องมือแพทย์รุ่นใหม่ๆจะสนับสนุนมาตรฐานนี้ และเมื่อภาพถ่ายทางการแพทย์มีมาตรฐานเดียวกัน จึงทำให้สามารถส่ง แลกเปลี่ยน และใช้ได้ในเครื่องมือแพทย์ และโปรแกรมที่ใช้ในการแพทย์ แม้มาจากต่างบริษัทกัน โดย DICOM จะประกอบด้วย header ของไฟล์ ซึ่งจะบอกถึงข้อมูลของภาพ เช่น ความกว้าง ความยาว ชนิดของภาพ และข้อมูลของผู้ป่วย เช่น ชื่อ นามสกุล หรืออื่นๆ
DICOM file เป็นภาพทางการแพทย์ที่ matlab สนับสนุนในการอ่าน จึงสามารถอ่านไฟล์ประเภทนี้ได้ง่าย โดยจะเพิ่มลูกเล่นได้มากมาย เพราะ matlab มีฟังก์ชั่นสนับสนุนเยอะ รับค่าข้อมูลทั้งหมดของ Dicom
Keyword fucntion : X = dicomread(filename)
ไฟล์ avi หรือ Audio Video Interleave เป็นฟอร์แมตของไฟล์วิดีโอที่ถูกพัฒนาโดย Microsoft โดย avi จะสามารถเก็บได้ทั้งไฟล์วิดีโอและเสียง โดยจะเล่นพร้อมกัน ไฟล์ avi สามารถสร้างได้โดยไม่มีการบีบอัดไฟล์ จึงทำให้ไฟล์มีขนาดใหญ่แต่ไม่สูญเสียคุณภาพของไฟล์ ทำให้ไม่จำเป็นต้องติดตั้ง codecs
Keyword fucntion : obj = VideoReader(filename)
อ่านไฟล์วิดีโอทั้งหมดที่รองรับ รับค่าข้อมูลทั้งหมดของวิดีโอ แล้วสามารถนำไปประยุกต์ใช้ทำงานได้ เพื่อเล่นกับฟังก์ชั่นในimage processingต่างๆได้มากมาย
กล้อง Webcam เป็นกล้องที่ใช้บันทึกวิดีโอ เชื่อมต่อกับคอมพิวเตอร์ และสามารถบันทึกได้แบบ real-time มีทั้งแบบ มีสายและแบบไร้สาย ราคาก็มีตั้งแต่หลักร้อยขึ้นไป เซ็นเซอร์รับภาพที่ใช้จะมีแบบ CCD และ CMOS
Keyword fucntion : obj = videoinput(adaptorname)
ตัวช่วยเพื่อให้เปิดกล้องในคอมพิวเตอร์ เพียงแค่จะมีค่าพารามิเตอน์หลายตัวที่ต้องใช้ประกอบ ต้องตั้งค่าพารามิเตอร์หน้าจอให้ตรงกับคอมพิวเตอร์ จึงจะใช้งานได้ และสามารถปรับความใหญ่ของจอที่แสดง
การเปิดภาพที่ใช้จะทำเป็นฟังก์ชั่น ซึ่งผู้ใช้ควร set path ของ lsm.zip ที่ให้ดาวน์โหลดข้างล่างนี้ไปด้วย โดยเมื่อใช้โค้ดจะใช้เหมือนฟังก์ชั่นทั่วไป ฟังก์ชั่นนี้จะนำข้อมูลภาพมาเก็บเป็น array แล้วแสดงผลออกมาเป็นภาพ RGB ที่ทับซ้อนกันให้เห็นเป็นภาพปกติ
เมื่อนำภาพตัวอย่างมาเปิดใน matlab จะเป็นภาพตัดขวางของสมอง ซึ่งโค้ดจะที่ออกแบบจะทำการเปิดภาพออกมา และใช้ image processing 2 แบบ คือ 1) ปรับความคมชัดของภาพ สามารถปรับความคมชัดของภาพได้ตามต้องการ 2) ปรับด้านกว้างยาวของภาพที่แสดง ตามขนาดภาพที่รับมา
matlabมีระบบที่สนับสนุนการเปิดไฟล์วิดีโอ ทำให้สามารถเปิดได้หลายนามสกุล เช่น avi mp4 mov เป็นต้น จึงอยู่ที่ลูกเล่นในเรื่องimage processing ในที่นี้ใส่การกำหนดเฟรมภาพที่ต้องการถ่ายภาพออกมา เพื่อให้ได้ภาพที่ผู้ใช้ต้องการ
ทำการสั่งเปิดกล้องของคอมพิวเตอร์ โดยจะมี 3 แบบ 1) สั่งเปิดกล้องธรรมดา เหมือนกดโปรแกรมกล้องตามปกติ 2) เมื่อเปิดกล้องจะทำการถ่ายรูปทันที โดยจะแสดงเป็นภาพที่ถ่ายให้เห็น 3) สั่งเปิดกล้อง โดยจะแทรก image processing เป็นการตรวจจับการเคลื่อนไหวทั้งหมด ในขอบเขตที่กล้องเห็น
ผลจาการศึกษาเกี่ยวกับนำไฟล์ภาพที่ใช้ในด้านวิทยาศาตร์การแพทย์ และสามารถนำไปพัฒนา software ให้มีประสิทธิภาพซึ่ง ในการทำรายงานครั้งนี้จะเป็นวิธีการใช้เบื้องต้นสำหรับการนำภาพและวิดีโอไปใช้ ความรู้ที่ได้จะเป็นประโยชน์สำหรับการอ่านโค้ดเบื้องต้นสำหรับนักพัฒนาด้าน image processing เพื่อให้ภาพและวิดีโอมีความละเอียดสำหรับผู้ใช้งาน สำหรับผู้เขียนได้ใช้ MATLAB ในการใช้งานสำหรับการทดลองนี้ ซึ่งมีทั้งข้อดึและข้อเสียสำหรับการใช้งาน ถ้าเราสามารถนำไปประยุกต์กับโปรแกรมอื่น เช่น Python JAVAเป็นต้น เพื่อให้เหมาะสมและพัฒนา user interface ให้ง่ายต่อการใช้งานในอนาคต
ในหัวข้อที่ได้ทำการศึกษาในครั้งนี้คือ การนำเข้าภาพ DICOM, ไฟล์ .lsm, video และ การบันทึกวิดีโอจาก webcam เพื่อให้ทราบข้อแตกต่างของข้อมูลที่เก็บอยู่ในไฟล์แต่ละประเภท และสามารถทำ image processing กับไฟล์แต่ละประเภท เพื่อให้ได้ข้อมูลภาพทางการแพทย์ที่มีความเหมาะสมต่อการใช้งาน
จากหัวข้อที่ได้ศึกษานั้นสามารถนำไปพัฒนาต่อยอดได้ทั้งในทาง Biomedical หรือทางอื่นๆ เช่น การพัฒนาซอฟท์แวร์ทางการแพทย์ โดยนำภาพ CR หรือภาพ CT scan มาทำ image processing เพื่อตรวจหามะเร็งหรือเนื้อร้ายต่างๆ หรือการทำ Real-time motion analysis ให้กับคนไข้ ซึ่งจะเป็นประโยชน์ต่อการทำงานของบุคลากรทางการแพทย์