หลักการทำงาน ของ ออโตสเตอริโอแกรม

สเตอริโอแกรมแบบกระดาษบุผนัง

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

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

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

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

ภาพออโตสเตอริโอแกรม แสดงผนังลวง 3 ระดับความลึกโดยการใช้ระยะห่างของภาพซ้ำต่าง ๆ กัน

ภาพ 3 มิติในตัวอย่างภาพออโตสเตอริโอแกรม สร้างโดยการใช้ภาพขี่เสือซ้ำ ๆ กัน ทุก ๆ 140 พิกเซล ส่วนภาพขี่ฉลามนั้นซ้ำกันทุก ๆ 130 พิกเซล และภาพเสือซ้ำกันทุก ๆ 120 พิกเซล ยิ่งภาพซ้ำอยู่ใกล้กันมากขึ้นจะทำให้มองเห็นภาพลอยสูงจากผนังมากขึ้น ระยะทางระหว่างภาพซ้ำจะเรียกว่า ความลึก หรือ ค่า z-บัฟเฟอร์ ของภาพซ้ำนั้น

ภาพนี้แสดงถึงลักษณะภาพ 3 มิติ ที่จะมองเห็นลอยขึ้นมาในภาพออโตสเตอริโอแกรมแสดงความลึก หรือ ค่าแกน-z ของภาพ ซึ่งมีค่าแปรตามระยะห่างระหว่างภาพซ้ำ

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

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

แผนผังแสดงความลึก

ออโตสเตอริโอแกรมที่มีรูปในแต่ละแถวซ้ำกันในแนวนอนด้วยระยะห่างเท่า ๆ กัน สามารถดูได้ด้วยวิธี การมองแบบตาเขเข้าหากัน (cross-eyed) หรือ การมองแบบมองไกล (wall-eyed) การดูทั้งสองแบบนี้จะได้การรับรู้ระดับความลึกของภาพเหมือนกัน แต่วิธีแบบตาเขเข้าหากัน จะให้ความแตกต่างของความลึกระหว่างชั้นผนังที่มากกว่า

รูปแบบซ้ำแต่ละแถวในออโตสเตอริโอแกรมนี้จะปรากฏที่ระดับความลึกแตกต่างกัน

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

ภาพออโตสเตอริโอแกรมแบบมองไกลที่แสดงไว้ด้านล่างนี้ จะสร้างภาพความลึก 3 ระดับตามแนวแกน X ผนังส่วนลึกที่สุดจะอยู่ด้านซ้ายของภาพ และผนังที่อยู่ตื้นที่สุดจะอยู่ทางด้านขวาของภาพ ตรงกลางของภาพจะเป็นภาพระดับความลึกปานกลาง ผนังส่วนลึกที่สุดสร้างโดยใช้ภาพซ้ำระยะห่าง 140 พิกเซล เราสามารถทำให้ภาพตื้นขึ้นมาโดยการขยับภาพซ้ำไปทางด้านซ้าย ตัวอย่างเช่น ผนังตรงกลางนั้นสร้างจากการขยับภาพซ้ำไปทางซ้าย 10 พิกเซล ซึ่งทำให้ระยะซ้ำของภาพลดลงเหลือ 130 พิกเซล การประกบภาพซ้ำในสมองของคนเรานั้นไม่จำเป็นจะต้องเป็นภาพที่เราเข้าใจได้ ในภาพออโตสเตอริโอแกรมดังกล่าว เราสามารถรับรู้ความลึกได้ถึงแม้ว่าภาพจะเล็กลง หรือแม้กระทั่งเป็นจุดมั่วก็ตาม

พื้นสีขาว เทา และ ดำ แสดงระดับความลึกของภาพแบบ

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

โดยใช้ระดับสีเทานี้ในการสร้างแผนผังความลึกของภาพออโตสเตอริโอแกรมข้างต้น เราสามารถสร้างแผนผังความลึก 3 ระดับโดยใช้สีดำ สีขาว และ สีเทา เพื่อแทนระยะแตกต่างความห่างของภาพซ้ำที่มีการขยับเคลื่อนระยะซ้ำ 0 พิกเซล 10 พิกเซล และ 20 พิกเซล ตามลำดับ แผนผังความลึกนี้เป็นส่วนสำคัญในการสร้างภาพออโตสเตอริโอแกรมแบบจุดมั่ว


ออโตสเตอริโอแกรมแบบใช้จุดมั่ว

แผนผังความลึก

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

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


รูปสี่เหลี่ยม 3 อัน ที่ความลึกแตกต่างกันแต่ละจุดในภาพมีระยะซ้ำตามแผนผังความลึก

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

ภาพออโตสเตอริโอแกรมแบบจุดมั่ว ของภาพฉลาม ซึ่งมีระดับความลึกละเอียด และ เปลี่ยนแปลงอย่างต่อเนื่อง

ในการสร้างระดับความลึกที่ต่อเนื่องนั้น จำเป็นต้องใช้ภาพซ้ำต้นแบบที่มีรายละเอียดซับซ้อนกว่าภาพต้นแบบของแบบบุผนัง ดังนั้นภาพของจุดมั่วจึงเป็นภาพที่เหมาะสม ภาพสเตอริโอแกรมแบบจุดมั่วนี้มีชื่อเรียกว่า สเตอริโอแกรมภาพเดี่ยวแบบจุดมั่ว (single image random dot stereograms-SIRDS)

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

แผนผังแสดงระดับความลึก ของฉลามภาพฉลาม 3 มิติที่เห็นจะมีรูปร่างที่มนเรียบต่อเนื่อง


ออโตสเตอริโอแกรมแบบเคลื่อนไหว

ภาพออโตสเตอริโอแกรมเคลื่อนไหว Tut Animated Shark.gif 800x200 version

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