หน้าเว็บ

วันพฤหัสบดีที่ 20 กุมภาพันธ์ พ.ศ. 2557

ความสามารถในการมองเห็นภาพของคอมพิวเตอร์ (Computer Vision Technology)

 


ในศาสตร์ทางด้านวิศวกรรมคอมพิวเตอร์ บางท่านอาจจะเข้าใจว่าเป็นศาสตร์ที่ไม่มีแยกสาขาย่อยไปอีกแล้ว ซึ่งในความเป็นจริงวิศวกรรมคอมพิวเตอร์มีการแยกย่อยลงไปอีกเป็นจำนวนมาก อาทิ วิศวกรรมซอฟต์แวร์ (Software Engineering) การรักษาความปลอดภัยบนเครือข่าย (Network Security) การรู้จำเสียงพูด (Speech Recognition) คอมพิวเตอร์กราฟิก (Computer Graphics) และอื่นๆ วันนี้ผมจะพูดถึงเทคโนโลยีตัวใหม่ที่อยู่ในศาสตร์ทางด้านวิศวกรรมคอมพิวเตอร์อีกตัวที่เรียกว่า Computer Vision 

ก่อนอื่นเรามาเข้าใจความหมายกัน ก่อนว่า Computer Vision นี่มันคืออะไร ถ้ามองไปที่ความหมายทีละตัว Computer ก็คือคอมพิวเตอร์ทั่วๆ ไปเลยนั่นเอง แต่ในส่วน Vision เป็นคำนามแปลว่า ความสามารถในการเห็นภาพ หรือพจนานุกรมบางเล่มก็จะแปลว่าวิสัยทัศน์ ซึ่งในที่นี้ผมขอแปลง่ายๆ ว่า คือความสามารถในการมองเห็นภาพหรือเข้าใจภาพ 

เมื่อเอาสองคำมาบูรณาการกัน ในภาษาไทยเรียกง่ายๆ ว่า คอมพิวเตอร์วิทัศน์ ซึ่งก็คือเทคโนโลยีการทำให้คอมพิวเตอร์มีความสามารถในการมองเห็นภาพหรือเข้าใจภาพ หมายความว่าอย่างไร อธิบายเป็นหลักการง่ายๆ ก็คือเวลามนุษย์เราใช้ตามองไปที่ฉากๆ หนึ่ง เช่น เรามองไปที่วิวในห้อง เราสามารถรับรู้ได้เลยว่า นี่คือโต๊ะ เก้าอี้ ตู้เย็น หรือถ้าเรามองไปที่ถนน เราก็รับรู้ได้ว่ามีรถวิ่งอยู่ มีคนเดินอยู่ที่ทาง เดิน ที่เรารับรู้ได้เพราะว่าเรามีตาในการมอง และมีสมองในการประมวลผลว่า นี่คือวัตถุ ต่างๆ แต่สำหรับคอมพิวเตอร์ มันไม่ง่ายอย่างนั้น เพราะฉะนั้นจึงเกิดศาสตร์ด้านวิศวกรรมศาสตร์คอมพิวเตอร์ขึ้นมาใหม่ ที่เราเรียกว่า Computer Vision นั่นก็คือการทำให้คอมพิวเตอร์ได้รับรู้ภาพหรือมองเห็นภาพได้เหมือนมนุษย์ หรือกล่าวอีกนัยหนึ่ง ก็คือการทำให้คอมพิวเตอร์สามารถทำการดึงข้อมูลสารสนเทศจากรูปภาพออกมานั่นเอง 


หลักการง่ายๆ ก็คือ ก่อนอื่นต้องติดตาให้กับคอมพิวเตอร์ ซึ่งตาของคอม พิวเตอร์จะเป็นอะไรไม่ได้นอกจากกล้องนั่นเอง กล้องนี้แหละก็เปรียบได้เหมือนตาของมนุษย์เรา และสิ่งถัดมาก็คือเราจะต้อง สอนให้คอมพิวเตอร์รู้จักคำจำกัดความของวัตถุต่างๆ ซึ่งขั้นตอนนี้ก็เปรียบได้เหมือนกับสมองของมนุษย์ 

ยกตัวอย่างเช่น ที่เราเข้าใจและตี ความภาพต่างๆ ได้ว่า อันนี้คือโต๊ะ ตู้เย็น รถยนต์ ก็เพราะเรามีสมองคอยประมวลผล ว่าโต๊ะ ควรจะมีขาโต๊ะ มีที่วางของ ส่วนตู้เย็นจะเป็นตู้สี่เหลี่ยม มีที่เปิด รถยนต์ควรจะมีล้อรถสี่ล้อ มีประตู มีตัวถัง มีฝากระโปรงรถ ซึ่งสมองของเราจริงๆ แล้วเรา ก็รับรู้เรื่องพวกนี้มาตั้งแต่เด็กๆ ว่านี่แหละ คือ วัตถุต่างๆ พวกนี้ ซึ่งความยากของคอมพิวเตอร์วิทัศน์ก็คือทำอย่างไรให้คอมพิวเตอร์เข้าใจได้เหมือนหรือดีกว่าสมองมนุษย์ที่สามารถเข้าใจภาพต่างๆ ได้ 

เครื่องมือที่ใช้ใน Computer Vision หรือสมองที่เราจะใส่ให้คอมพิวเตอร์ หลักๆ เลยจะหนีไม่พ้นองค์ความรู้ทางคณิตศาสตร์ อาทิ เรขาคณิต พีชคณิตเชิงเส้น สถิติ การวิเคราะห์เชิงฟังก์ชัน (Functional analysis) และการหาค่าเหมาะที่สุด (Optimization) โดยเครื่องมือเหล่านี้ใช้ในการสร้างขั้นตอน วิธีต่างๆ ในการแยกองค์ประกอบของภาพ แยกส่วนของภาพ และการจัดกลุ่มภาพเพื่อ ให้คอมพิวเตอร์สามารถเข้าใจภาพนั้นๆ ได้ 

ผู้อ่านหลายท่านอาจจะยังจินตนาการตามไม่ทัน ผมขอยกตัวอย่างให้ชัดเจน มากยิ่งขึ้นซึ่งก็คือ งานวิจัยด้าน Computer Vision ที่มีชื่อเสียงมากในช่วงที่ Computer Vision กำลังเริ่มได้รับความนิยมใหม่ๆ ใน ปลายศตวรรษที่ 20 ก็คืองานวิจัยที่มีชื่อว่า “Finding Naked People” หรือที่แปลเป็น ภาษาไทยว่า การค้นหาคนเปลือยกาย บางคนฟังชื่อหัวข้องานวิจัยนี้ อาจจะเห็นเป็นเรื่องขบขำ แต่งานวิจัยนี้ได้เป็นงานวิจัยของศาสตราจารย์ ดร.David Forsyth จากมหาวิทยาลัยแคลิฟอร์เนียเบิร์กลีย์ ประเทศสหรัฐอเมริกา ที่ได้ตีพิมพ์ในงานประชุมวิชาการ ECCV (IEEE European Confe-rence on Computer Vision) ที่มีชื่อเสียง มากอันหนึ่งด้าน Computer Vision 

ศาสตราจารย์ ดร.David Forsyth อธิบายการหาคนในรูปภาพ โดยคนนั้นไม่ใช่ คนใส่เสื้อผ้าธรรมดา แต่เป็นคนที่เปลือยกายทั้งชายและหญิง โดยใช้สมการคณิตศาสตร์ชั้นสูงในการอธิบาย ซึ่งอาจจะนับเป็นงานวิจัยวิชาการไม่กี่ชิ้นในโลกวิศวกรรม คอมพิวเตอร์ที่ประกอบไปด้วยภาพเปลือยเปล่าของชายหญิงในอากัปกิริยาท่าทางต่างๆ อยู่เต็มเปเปอร์ ซึ่งถ้ามองในแง่มุมวิชาการและผลที่ได้รับของงานวิจัยแล้ว สามารถนำไปใช้ประโยชน์ได้หลายอย่าง อาทิ การที่เราจะกรองภาพเปลือยของมนุษย์ไม่ให้ปรากฏอยู่ในเว็บไซต์หรือฐานข้อมูลของเรา ซึ่งถ้าในเว็บไซต์หรือฐานข้อมูลของเราไม่ใหญ่ เราอาจใช้มนุษย์ในการกรองภาพเหล่านี้เพื่อเซ็นเซอร์ (Censor) รูปพวกนี้ไม่ให้ปรากฏสู่สาธารณะได้ แต่ถ้าเรามีฐานข้อมูลรูปจำนวนมากเป็นล้านๆ รูป เราไม่สามารถให้คนหรือมนุษย์มากรอง ได้ ถึงทำได้ก็คงใช้คนเป็นจำนวนมาก ซึ่งก็คงไม่คุ้ม ซึ่งถ้าคอมพิวเตอร์สามารถเข้าใจได้ว่านี่คือรูปเปลือยของชาย นี่คือรูปเปลือยของหญิง เราก็สามารถลดค่าใช้จ่าย ลดเวลาในการกรองหรือเซ็นเซอร์ภาพพวกนี้ออกไปได้อย่างรวดเร็วอย่างมีนัยสำคัญ ซึ่งงานวิจัยนี้ก็สามารถเอาไปใช้งานได้ในส่วนนี้นี่เอง? 

ในศตวรรษที่ 21 Computer Vision เข้ามามีบทบาทในชีวิตของเราหลากหลายรูปแบบมากยิ่งขั้น อาทิ การค้นหาสืบค้นข้อมูลด้วยรูปภาพ การระบุตำแหน่งวัตถุที่ต้องการในภาพ การติดตามวัตถุในภาพต่อเนื่อง (Tracking) หรือรวมถึงการไปประยุกต์ใช้ใน Application ต่างๆ 

ผมขอยกตัวอย่างงานวิจัยด้าน Computer Vision ที่น่าสนใจอีกตัวหนึ่งที่เพิ่งออกมาเป็น Application ใหม่ของบริษัท Google นั่นก็คือการใช้ Computer Vision เพื่อแก้ปัญหาในเกม Sudoku 

หลักการง่ายๆ ก็คือ การใช้กล้องที่ติดอยู่ที่โทรศัพท์มือถือถ่ายรูปตารางเกม Sudoku และระบบจะทำการสแกนหาเส้นตารางในเกม Sudoku ทั้งแกนตั้งและแกน นอน ทันทีที่หาตารางเจอก็จะทำการค้นหา ตัวเลขในตาราง และเมื่อหาตัวเลขในตาราง ได้แล้ว ก็ทำการคำนวณหาตัวเลขที่ควรจะเติมลงไปในเกม ซึ่งทำได้อย่างรวดเร็ว Google ทำการโฆษณา Product ชิ้นนี้โดยการหาผู้ชนะเลิศที่เก่ง Sudoku ที่สุดในประเทศมา หรือกล่าวอีกนัยหนึ่งก็คือมนุษย์ที่เก่ง Sudoku ที่สุดในประเทศ มาทำการแข่ง Sudoku กับโปรแกรมคอมพิวเตอร์ที่ใส่เข้าไปในโทรศัพท์มือถือที่ผลิตโดย ทีมงาน Google Goggles (เป็นทีมงาน Google ที่มุ่งเน้นไปที่งานวิจัยทาง Image Recognition บนโทรศัพท์มือถือ) และแน่นอนโปรแกรมคอมพิวเตอร์ของ Google ชนะมนุษย์ขาดลอย 

อย่าลืมนะครับ ต่อไปใครถามคุณผู้อ่านว่า อะไรคือ Computer Vision อะไรคือคอมพิวเตอร์วิทัศน์ อย่าลืมอธิบายให้เขา ฟังดังๆ เลยครับ จะได้รู้ว่าคุณผู้อ่านไม่ได้ตกเทรนด์ด้านเทคโนโลยี 

ในครั้งหน้า ผมจะนำเทคโนโลยีใหม่ๆ มาแชร์กับคุณผู้อ่านอีก รับรองเลยครับว่า เทคโนโลยีกับชีวิตประจำวันจะไม่ใช่เรื่องไกลตัวพวกเราอีกต่อไป




1 ความคิดเห็น:

  1. วิสัยทัศน์คอมพิวเตอร์แนวคิดใหม่ที่ฉันเคยได้ยินVwin มือถือhttps://vwin-thailand.com/vwin-%E0%B8%A1%E0%B8%B7%E0%B8%AD%E0%B8%96%E0%B8%B7%E0%B8%AD/

    ตอบลบ