ทำไมพิกเซลถึงเป็นสี่เหลี่ยม


207

พิกเซลในหน้าจอเป็นสี่เหลี่ยมจัตุรัส แต่ฉันไม่แน่ใจว่าทำไม

ภาพตัวหนังสือทั้งสองดูไม่สวยเลย - แต่ฉันไม่แน่ใจว่ามันมีข้อดีของการยกกำลังสองเหนือหกเหลี่ยมที่นี่

Hexagons ยังแบ่งออกเป็น 3 สีอย่าง:

แล้วข้อดีของการยกกำลังสองในจอ LCD / CRT คืออะไร?


20
กรุณาชี้แจงเกี่ยวกับบริบท คุณหมายถึงหน้าจอรูปแบบภาพหรืองานพิมพ์หรือไม่? และถึงตอนนั้นคำถามนี้อาจกว้างเกินไป
Daniel B

66
พิกเซลเป็นหน่วยทางลอจิคัลที่ไม่มีมิติและไม่ได้เป็นความจริงตามที่ @DanielB แนะนำให้ rasterizer ทุกตัวจัดการมันแตกต่างกัน ตัวอย่างรูปภาพ Google ของ "พิกเซลหน้าจอ"
Yorik

5
คำถามนี้ควรอาจจะถูกย้ายไปยังประสบการณ์ของผู้ใช้หรือวิศวกรรมไฟฟ้า
อยากรู้อยากเห็น dannii


13
ฉันไม่เข้าใจ ทำไม upvoted นี้เลยและทำไมมันไม่ถูกย้ายไปยังฟอรัมวิศวกรรมเครื่องกล?
Carl Witthoft

คำตอบ:


264

พิกเซลในหน้าจอเป็นสี่เหลี่ยมจัตุรัส แต่ฉันไม่แน่ใจว่าทำไม

พวกเขาไม่ได้ (จำเป็น) กำลังสอง

บางคนอาจโต้แย้งว่าพวกเขาไม่เคยเป็นรูปสี่เหลี่ยมจัตุรัส ("พิกเซลเป็นตัวอย่างจุดมีอยู่เพียงจุดเดียว")


แล้วข้อดีของการยกกำลังสองในจอ LCD / CRT คืออะไร?

  • การเตรียมการอื่น ๆ (เช่นสามเหลี่ยมหกเหลี่ยมหรือพื้นที่อื่น ๆ ที่เติมรูปหลายเหลี่ยม ) มีราคาแพงกว่าการคำนวณ

  • ทุกรูปแบบของภาพนั้นขึ้นอยู่กับพิกเซล

  • หากเราเลือกรูปร่างหรือเลย์เอาต์อื่น ๆ ซอฟต์แวร์จำนวนมากจะต้องถูกเขียนใหม่

  • โรงงานทั้งหมดในปัจจุบันผลิตจอแสดงผลที่มีรูปแบบพิกเซลสี่เหลี่ยมจะต้องได้รับการดัดแปลงสำหรับรูปแบบอื่น ๆ


การใช้งานระบบพิกัดหกเหลี่ยม

โดยทั่วไปมีข้อควรพิจารณาหลัก ๆ สี่ข้อที่ต้องคำนึงถึงเมื่อใช้ระบบพิกัดหกเหลี่ยม:

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

ปัญหาเกี่ยวกับระบบพิกัดหกเหลี่ยม

มีปัญหาบางอย่างกับระบบพิกัดหกเหลี่ยมอย่างไรก็ตาม ประเด็นหนึ่งก็คือผู้คนคุ้นเคยกับโครงตาข่ายแบบดั้งเดิมมาก

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

การขาดอุปกรณ์อินพุตที่แมปไปยังโครงร่างหกเหลี่ยมและการขาดอุปกรณ์เอาต์พุตที่แสดงเช่นนี้ก็เป็นอุปสรรคเช่นกัน:

  • ความจำเป็นในการแปลงจากกำลังสองเป็นรูปหกเหลี่ยมและกลับมาลดลงอีกครั้งจากประโยชน์ของการใช้งานกับโครงหลังคาหกเหลี่ยม

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

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

หากมีใครพยายามที่จะใช้ระบบพิกัดหกเหลี่ยมในการมองเห็นของตัวเองพวกเขาควรพิจารณาก่อนว่าปัญหาเหล่านี้มีน้ำหนักเกินกว่าความได้เปรียบโดยธรรมชาติของการทำงานกับรูปหกเหลี่ยมหรือไม่

ระบบพิกัดหกเหลี่ยมต้นทาง


มีการลองรูปร่างหรือเลย์เอาต์อื่น ๆ อีกหรือไม่?

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

เปรียบเทียบจอแสดงผล XO-1 (ซ้าย) กับจอแสดงผลคริสตัลเหลวทั่วไป (LCD) ภาพแสดง 1 × 1 มม. ของแต่ละหน้าจอ จอแอลซีดีทั่วไปที่อยู่กลุ่ม 3 ตำแหน่งเป็นพิกเซล OLPC XO LCD ระบุตำแหน่งแต่ละตำแหน่งเป็นพิกเซลแยก:

ป้อนคำอธิบายรูปภาพที่นี่

ที่มาOLPC XO

จอแสดงผลอื่น ๆ (โดยเฉพาะ OLEDs) ใช้รูปแบบที่แตกต่างกัน - เช่นPenTile :

ป้อนคำอธิบายรูปภาพที่นี่

เลย์เอาต์ประกอบด้วย quincunx ซึ่งประกอบด้วย subpixels สีแดงสองตัว, subpixels สีเขียวสองตัว, และ subpixel สีฟ้ากลางหนึ่งอันในแต่ละเซลล์หน่วย

มันได้รับแรงบันดาลใจจาก biomimicry ของเรตินาของมนุษย์ซึ่งมีเซลล์รูปกรวยชนิด L และ M เกือบเท่ากัน แต่มีกรวย S น้อยกว่าอย่างมีนัยสำคัญ ในขณะที่กรวย S มีความรับผิดชอบหลักในการรับรู้สีฟ้าซึ่งไม่ได้มีผลกระทบต่อการรับรู้ของความส่องสว่างลดจำนวน subpixels สีน้ำเงินที่เกี่ยวข้องกับ subpixels สีแดงและสีเขียวในจอแสดงผลไม่ลดคุณภาพของภาพ

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

แหล่งตระกูลเมทริกซ์ PenTile


นิยามของพิกเซลแบบง่าย

หนึ่งในจุดเล็กที่รวมกันเป็นภาพบนหน้าจอโทรทัศน์จอคอมพิวเตอร์ ฯลฯ

แหล่งที่มาhttp://www.merriam-webster.com/dictionary/pixel


pixel

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

...

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

ป้อนคำอธิบายรูปภาพที่นี่

แหล่งพิกเซล


อัตราส่วนพิกเซล

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

อัตราส่วนพิกเซลแหล่งที่มา


พิกเซลไม่ใช่สี่เหลี่ยมจัตุรัสเล็ก ๆ น้อย ๆ !

พิกเซลเป็นตัวอย่างจุด มันมีอยู่เพียงจุดเดียว

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

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

แหล่งที่มาของA Pixel ไม่ใช่สี่เหลี่ยมจัตุรัสเล็ก ๆ น้อย ๆ ! (บันทึกทางเทคนิคของ Microsoft 6 Alvy Ray Smith, 17 กรกฎาคม 1995)


5
การอ้างอิงที่ต้องการในจุด "แพงกว่าการคำนวณ" เชื่อมโยงไปยังบทความวิจัยโดยพิจารณาเป็นแบบทดสอบหกเหลี่ยมเช่นและวิเคราะห์การคำนวณ มันฟังดูเหมือนคุณกำลังตั้งชื่อคำอธิบายที่น่าเชื่อถือ
djechlin

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

5
@djechlin รายละเอียดวิดีโอ / ภาพทั้งหมดขึ้นอยู่กับอาร์เรย์ของพิกเซลแบบสี่เหลี่ยม การแสดงวิดีโอหรือภาพใด ๆ จะต้องมีการแปลงจากระบบพิกัดสี่เหลี่ยม (คาร์ทีเซียน) เป็นระบบพิกัดหกเหลี่ยม การคำนวณสำหรับการวาดเส้นบนระบบพิกัดสี่เหลี่ยมนั้นง่ายกว่าการวาดบนระบบพิกัดหกเหลี่ยม (นี่คือคณิตศาสตร์พื้นฐาน) ฉันต้องการอธิบายเพิ่มเติมหรือไม่
DavidPostill

2
@djechlin คำตอบอัพเดทและรวมการอ้างอิงแล้ว
DavidPostill

4
+1 สำหรับแหล่งที่มา Microsoft Tech Memo ของคุณ คำตอบที่ยอดเยี่ยมโดยทั่วไป
shock_gone_wild

71

ฉันต้องการเสนอทางเลือกให้กับ David Postill ในการตอบของเขาเขาเข้าหาคำถามของพิกเซลกำลังสองเช่นเดียวกับชื่อเรื่องที่แนะนำ อย่างไรก็ตามเขาแสดงความคิดเห็นอย่างลึกซึ้งในคำตอบของเขา:

บางคนอาจโต้แย้งว่าพวกเขาไม่เคยเป็นรูปสี่เหลี่ยมจัตุรัส ("พิกเซลเป็นตัวอย่างจุดมีอยู่เพียงจุดเดียว")

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

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

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

กรอไปข้างหน้าสู่ทีวีโดยเฉพาะ CRT การสแกนแบบเก่า CRT ต้องการบางสิ่งที่แตกต่างจากภาพถ่าย: พวกเขาต้องสามารถแสดงเนื้อหาเป็นข้อมูลได้ โดยเฉพาะอย่างยิ่งมันจำเป็นต้องเป็นข้อมูลที่สามารถสตรีมในแบบแอนะล็อกผ่านสาย (โดยทั่วไปจะเป็นชุดของแรงดันไฟฟ้าที่เปลี่ยนแปลงอย่างต่อเนื่อง) รูปถ่ายเป็น 2d แต่เราจำเป็นต้องเปลี่ยนเป็นโครงสร้าง 1d เพื่อให้มันสามารถเปลี่ยนแปลงในมิติเดียว (เวลา) การแก้ปัญหาคือการแบ่งภาพออกเป็นเส้น ๆ (ไม่ใช่พิกเซล!) ภาพถูกเข้ารหัสทีละบรรทัด แต่ละบรรทัดเป็นสตรีมข้อมูลแบบอะนาล็อกไม่ใช่การสุ่มตัวอย่างแบบดิจิตอล แต่แต่ละบรรทัดแยกออกจากกัน ดังนั้นข้อมูลจึงไม่ต่อเนื่องในทิศทางแนวตั้ง แต่ต่อเนื่องในทิศทางแนวนอน

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

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

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

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

จากตรงนั้นคุณมีแบบอย่างที่ดีมากสำหรับกริดสี่เหลี่ยม ฮาร์ดแวร์กราฟิกสนับสนุนสิ่งที่ซอฟต์แวร์กำลังทำอยู่ (กริดสี่เหลี่ยม) และซอฟต์แวร์ที่กำหนดเป้าหมายฮาร์ดแวร์ (กริดสี่เหลี่ยม) ในทางทฤษฎีฮาร์ดแวร์บางตัวอาจพยายามทำกริดหกเหลี่ยม แต่ซอฟต์แวร์ไม่ได้ให้รางวัลและไม่มีใครต้องการจ่ายเงินเป็นฮาร์ดแวร์ถึงสองเท่า!

เร็วนี้ส่งต่อเราถึงวันนี้ เรายังคงต้องการเส้นแนวนอนและแนวตั้งที่นุ่มนวล แต่ด้วยจอเรตินาระดับสูง อย่างไรก็ตามนักพัฒนายังคงได้รับการฝึกฝนให้คิดในแง่ของกริดสี่เหลี่ยมเก่า เราเห็นAPI ใหม่บางตัวสนับสนุน "การประสานงานเชิงตรรกะ" และทำการต่อต้านนามแฝงเพื่อให้ดูเหมือนว่ามีพื้นที่ 2 มิติเต็มรูปแบบอย่างต่อเนื่องในการเล่นด้วยแทนที่จะเป็นกริดของพิกเซล 2d ที่แข็ง แต่ช้า ในที่สุดเราอาจเห็นกริดหกเหลี่ยม

เราเห็นจริง ๆ แล้วไม่ใช่กับหน้าจอ ในการพิมพ์มันเป็นเรื่องธรรมดามากที่จะใช้ตารางหกเหลี่ยม ตามนุษย์ยอมรับกริดหกเหลี่ยมเร็วกว่าที่ยอมรับกริดสี่เหลี่ยม มันเกี่ยวข้องกับวิธี "alias" ในระบบที่แตกต่างกัน กริดแบบหกเหลี่ยมใช้นามแฝงในลักษณะที่ไม่เอื้ออำนวยน้อยกว่าซึ่งตาจะสบายกว่าด้วย (หากกริดหกเหลี่ยมต้องเลื่อนขึ้นหรือลงหนึ่งแถวพวกเขาจะทำอย่างราบรื่นในช่วงการเปลี่ยนภาพในแนวทแยง) กริดสี่เหลี่ยมต้องข้าม ชัดเจนไม่ต่อเนื่อง)


2
ยอดเยี่ยมสำหรับการอธิบายว่าทีวีเข้ามาเป็นอย่างไร: สตรีมแบบอะนาล็อก มาตรฐานนี้มีระยะเวลา 70 ปีและการเพิ่มสีได้ทำในลักษณะที่รักษาความเข้ากันได้กับ B / W ได้สำเร็จในวันนี้! ตอนนี้มีรูปแบบวิดีโอจำนวนเท่าใด

3
"" "ทีวีต้องแสดงข้อมูลนี้โดยใช้ฟอสฟอรอลทางกายภาพโดยมีตารางเพื่อแบ่งเป็นพิกเซล" "" - นี่เป็นทีวีจริงของ Black & White หรือไม่ ความเข้าใจของฉันคือ "สารเรืองแสงทางกายภาพ" ที่ไม่ต่อเนื่อง (ซึ่งยังไม่เคยติดต่อกับรายการที่เหมือนพิกเซลใด ๆ ในสตรีมข้อมูล) มาพร้อมกับโทรทัศน์สีและ CRT ขาวดำนั้นมีการเคลือบสารเรืองแสงอย่างต่อเนื่อง
Random832

ฉันชอบประวัติศาสตร์ แต่ฉันไม่เห็นด้วยกับการเปลี่ยนไปใช้อุปกรณ์ที่ทันสมัย แม้ว่ามรดกจะปรากฏเป็นเส้นตรงทีวีจริง ๆ แล้วเป็นแบบอะนาล็อกในทิศทางแนวนอนจนกว่าคุณจะดูฟอสเฟอร์สีบนทีวี มันเป็นรูปหกเหลี่ยมจริงๆ! ฉันขอแนะนำว่าเหตุผลที่แท้จริงที่เรามี rectilinear คือโครงร่าง VLSI นั้นง่ายกว่าเพราะ rectilinear มากกว่าที่จะบรรจุแบบหกเหลี่ยม
user3533030

1
ในทีวีสีดำและสีขาวทำไมคุณไม่ลองใส่ฟอสเฟอร์ฟอสฟอรัสบนพื้นผิวแล้วปล่อยให้กระแสอิเล็กตรอนแข็งแรงขึ้นหรืออ่อนแอลง สรุปแล้วทำไมพิกเซล (แนวนอน) ถึงเลย? เมื่อคุณมีสีแล้วสิ่งต่าง ๆ ก็จะยากขึ้น แต่ถึงอย่างนั้นสัญญาณสีไม่ได้ถูกกำหนดในลักษณะต่อพิกเซลหากฉันจำได้อย่างถูกต้อง สำหรับตัวอย่างแนวนอนจำนวนตัวอย่างที่ต้องการสร้างสัญญาณจากตัวอย่างความเข้มสม่ำเสมอเป็นหน้าที่ของแบนด์วิดท์ความถี่และการชดเชยครึ่ง "ตัวอย่าง" ไม่ปรับปรุงสิ่งนี้
Yakk

2
@Yakk CRTs สีดำและสีขาวส่วนใหญ่ถูกสร้างขึ้นอย่างนั้น - BW TV CRT ยุคแรกนั้นได้มาจาก Radar / Oscilloscope CRTs ซึ่งมักถูกควบคุมด้วยอะนาล็อก X / Y แบบอะนาล็อกหรือแบบไม่มีขั้ว ทีวียังคงใช้การสแกนตามบรรทัดเนื่องจากสอดคล้องกับวิธีการเข้ารหัสสัญญาณ แต่ไม่มีพิกเซลบนเส้น การแสดงพิเศษบางอย่าง (ส่วนใหญ่ใช้สำหรับห้องนักบินของเครื่องบิน) แม้กระทั่งการใช้ฟอสเฟอร์ที่เปลี่ยนสีขึ้นอยู่กับว่าพวกเขาถูกยิงด้วยลำแสงอิเล็กตรอนอย่างรุนแรงเพียงใด
rackandboneman

21

เหตุผลสองประการ:

  • รูปสี่เหลี่ยมผืนผ้าเมื่อเทียบกับรูปวงกลม, รูปสามเหลี่ยม, หรือมากกว่า -4- ด้านมีข้อดีที่สามารถวางไว้ถัดจากรูปสี่เหลี่ยมผืนผ้าอื่น ๆ ที่มีอย่างน้อย "เสียพื้นที่" สิ่งนี้ทำให้มั่นใจได้ว่าพื้นที่ทั้งหมดของพิกเซลก่อให้เกิดภาพ รูปร่างอื่น ๆ อาจมีอยู่ว่า "เข้าด้วยกัน" แต่พวกมันอาจจะซับซ้อนกว่าในการผลิตมากกว่าสี่เหลี่ยมธรรมดาหรือสี่เหลี่ยม แต่ไม่ได้แนะนำข้อดีเพิ่มเติมใด ๆ

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

    • หากพิกเซลสูงกว่ากว้างกว่าความหนาต่ำสุดของเส้นแนวนอนจะกว้างกว่าความหนาต่ำสุดของเส้นแนวตั้งทำให้เส้นแนวนอนและแนวตั้งดูแตกต่างกันด้วยจำนวนพิกเซลเท่ากัน

    • หากพิกเซลหมุนแล้วเส้นมุมที่ตรงกับมุมของการหมุนจะดูราบรื่นเส้นอื่น ๆ จะดูขรุขระ ระบบปฏิบัติการและซอฟต์แวร์เพิ่มประสิทธิภาพส่วนใหญ่อาศัยเส้นตรงเพื่อที่จะได้รับข้อมูลจำนวนมากหรือเป็นรอยหยัก

    • พิกเซลที่ถูกตัดเฉือน (rhombuses) จะเป็นสิ่งที่เลวร้ายที่สุดของทั้งสองโลก - ไม่ว่าจะเป็นเส้นทแยงมุมหรือแนวนอน / แนวตั้งจะราบรื่น

หากคุณไม่สนใจจอแสดงผลที่ใช้งานทั่วไป แต่มีจอแสดงผลที่เหมาะกับวัตถุประสงค์เฉพาะคุณสามารถยืดหยุ่นได้มากขึ้น ตัวอย่างสุดขั้วคือไฟ LED 7 เซกเมนต์หากคุณต้องการเพียงแสดงจำนวนพิกเซลที่ไม่ใช่สี่เหลี่ยมจตุรัส 7 รูปแบบที่คุณต้องการ หรือไฟ LED 15 ส่วนที่อนุญาตให้ใช้ตัวอักษร


อืมฉันไม่แน่ใจว่าการโต้แย้งเรื่องค่าใช้จ่ายใช้ได้กับรูปหกเหลี่ยม (อาจผิด)
ทิม

@Tim - คุณควรมีการวิจัยในเรื่อง หากมีข้อได้เปรียบทางเทคนิคสำหรับรูปหกเหลี่ยมที่ใช้ในการผลิตจอแสดงผลความจริงที่ไม่ได้ใช้แสดงว่าไม่มีความได้เปรียบใด ๆ จากความได้เปรียบด้านต้นทุนหรือประสิทธิภาพ
Ramhound

2
@Ramhound ใช่เข้าใจแล้ว ฉันต้องค้นคว้าเพิ่มเติม - คำถามนี้คือการวิจัยของฉัน ฉันถามหาสาเหตุที่ไม่ใช่รูปหกเหลี่ยม - ไม่ใช่สาเหตุที่เป็นรูปสี่เหลี่ยม (และลิงก์ไปยังการเปรียบเทียบค่าใช้จ่ายบางอย่างจะดี - idk ถ้าใครเคยทำมาก่อน)
ทิม

2
"พวกเขาอาจจะมีความซับซ้อนในการผลิตมากกว่าสี่เหลี่ยมหรือสี่เหลี่ยมเรียบง่าย" - "ยังไม่ได้แนะนำข้อดีเพิ่มเติมใด ๆ " -
ราฟาเอล

1
@ ราฟาเอลเอาละคุณไม่จำเป็นต้องมีการอ้างอิงสำหรับเรื่องนี้ - บน CRT "พิกเซล" ไม่ใช่สี่เหลี่ยมหรือสี่เหลี่ยม พวกเขามีการกระจายสีที่ดีและต้องการ "ลูกเล่น" การแสดงพิกเซลย่อยน้อยลง เมื่อ LCD มาถึงพวกเขาไม่สามารถเปรียบเทียบได้ - เทคโนโลยีเป็นโปรสี่เหลี่ยมผืนผ้าอย่างมากดังนั้นเลย์เอาต์แบบดั้งเดิมก็เป็นไปไม่ได้มากหรือน้อย แน่นอนว่า "LCD" ที่ทันสมัยไม่จำเป็นต้องเป็น LCD จริง ๆ - คุณจะไม่พบ "ผลึกเหลว" ใน OLED เช่น ในที่สุด hexagons (หรือ CRT โรงเรียนเก่ามันคล้ายกัน) จะใช้งานได้ดีกับรูปภาพและภาพยนตร์ แต่ไม่ใช่สำหรับ UIs
Luaan

15

พิกเซลไม่จำเป็นต้องเป็นสี่เหลี่ยมจัตุรัส!

ในอดีตพิกเซลมีรูปร่างเป็นสี่เหลี่ยม นั่นเป็นเหตุผลในเครื่องมือแก้ไขรูปภาพ / วิดีโอระดับมืออาชีพเช่น Photoshop, Premiere, Sony Vegas ... คุณจะเห็นตัวเลือกอัตราส่วนพิกเซล เฉพาะโทรทัศน์ที่ทันสมัยและจอมอนิเตอร์ PC เท่านั้นที่มีพิกเซลเป็นสี่เหลี่ยม

อัตราส่วนพิกเซลของ Photoshop

ตัวอย่างที่มีชื่อเสียง:

  • PAL โทรทัศน์อะนาล็อก / ดีวีดี: 720x576ซึ่งเห็นได้ชัดว่าไม่ใช่ 16: 9 หรือ 4: 3 แต่เป็น 5: 4 อย่างไรก็ตามเมื่อตั้งค่าอัตราส่วนพิกเซลที่ถูกต้องมันจะสร้างภาพออกที่ไม่ถูกเชื่อมโยงอย่างถูกต้อง

  • NTSC Analog TV / DVD: 720x480ซึ่งเป็น 3: 2 หลังจากตั้งค่าอัตราส่วนภาพมันจะกลายเป็น 16: 9 หรือ 4: 3 เหมือน PAL ด้านบน ความละเอียดแนวตั้งที่ต่ำกว่ายังอธิบายได้ว่าเหตุใดดีวีดี NTSC จึงดูคมชัดน้อยกว่า PAL มาก

  • VCD : PAL 352x288 , NTSC 352x240 ทั้งสองใช้อัตราส่วนหน้าจอ 4: 3
  • SVCD : 480x480และไม่น่าแปลกใจที่มันไม่ได้สร้างเอาต์พุตสี่เหลี่ยม
  • DV : 1440x1080ความละเอียด HD เต็มรูปแบบ 16: 9
  • CGA : 320x200และ640x200ใน 4: 3 (ใช่หน้าจอคอมพิวเตอร์รุ่นเก่าจะมีพิกเซลเป็นรูปสี่เหลี่ยมผืนผ้า)
  • EGAรองรับ 640x350 สำหรับหน้าจอ 4: 3 นอกเหนือจาก 320x200 และ 640x200

Adobe Premiere Pro - ทำงานกับอัตราส่วนภาพ


7
คำตอบนี้สามารถปรับปรุงได้โดยการอธิบายเพิ่มเติมเล็กน้อยเกี่ยวกับอัตราส่วนภาพ (ตรงข้ามกับเพียงลิงค์) มันไม่ชัดเจนด้วยตัวเองทำไมความละเอียดหน้าจอเฉพาะไม่สามารถมีพิกเซลสี่เหลี่ยม
Jon Bentley

1
ฉันไม่เข้าใจลิงก์ระหว่างพิกเซลสแควร์และความละเอียด
อัล

@AL ตามที่ระบุไว้ข้างต้นแล้ว 720: 576 คือ 5: 4 และหากพิกเซลเป็นสี่เหลี่ยมจัตุรัสมันจะส่งผลในอัตราส่วน 5: 4 อย่างไรก็ตามหากตั้งค่าอัตราส่วนพิกเซลเป็นค่าที่แตกต่างจาก 1 จะทำให้อัตราส่วนภาพแตกต่างกัน แต่ที่ฉันพูดเกี่ยวกับการแก้ปัญหาที่นี่? ฉันเพิ่งบอกอัตราส่วนกว้างยาว
phuclv

3
@AL: คำตอบนี้พิสูจน์ได้ว่าไม่ใช่ทุกพิกเซลในหน้าจอ (หรือไฟล์) ที่เป็นรูปสี่เหลี่ยมจัตุรัส: บางอันเป็นรูปสี่เหลี่ยมผืนผ้า
slebetman

1
คอมพิวเตอร์ Atari 8 บิตมีโหมดกราฟิกบางตัวที่ความละเอียด 80x192 ส่งผลให้พิกเซลที่ไม่ได้เป็นรูปสี่เหลี่ยมจัตุรัสมีขนาดเล็กมาก
DaveP

10

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

  • เป็นการง่ายกว่าที่จะแสดงข้อมูลรูปภาพบิตแมปบนตารางสี่เหลี่ยมเป็นอาร์เรย์ 2d (ทั้งเพื่อความง่ายของฮาร์ดแวร์และสำหรับมนุษย์)
  • มันเกิดขึ้นในอดีตดังนั้นมันจะเป็นเช่นนั้นสักระยะหนึ่งเนื่องจากเหตุผล # 1

ปรับปรุง

หัวข้อนี้เป็นหนังระทึกขวัญ เกือบ 10k views ผู้คนต้องการเป็นหลักของพิกเซล :) ตลกว่ามีคนค้นหาความสัมพันธ์ของคำถามด้วยความละเอียดหน้าจอหรือ "รูปสี่เหลี่ยม" ของรูปสี่เหลี่ยม
สำหรับฉันแล้วมันคือตึกแบบสี่เหลี่ยมจตุรัสหรือหกเหลี่ยมให้ผลออพติคอลที่ดีกว่านี้หรือไม่

อันดับแรกเราต้องการการเรียงแบบเรียบง่าย แต่ครอบคลุมพื้นที่ที่กำหนดเองได้ดีกว่าและมันเป็นการปูกระเบื้องแบบหกเหลี่ยมแน่นอน ซึ่งสามารถเข้าใจได้ง่ายจากการทดสอบง่ายๆ การทดสอบที่แข็งแกร่งจะเรียกว่าการทดสอบ "แหวน" เพื่อความเรียบง่ายที่นี่ฉันสร้างสี trinary: 0 - พื้นหลัง, 1 - สีเทาและ 2 - สีดำ

เมื่อมองด้วยจุดเราจะพยายามขยายวงแหวนทำให้มันดูต่อเนื่องดังนี้:

ป้อนคำอธิบายรูปภาพที่นี่

แน่นอนฉันต้องการวาดเส้นแนวนอน / แนวตั้งสำหรับงานหลายอย่างเช่น UI และการออกแบบการพิมพ์หรือเกม platformer มาเรียกมันว่า "Bar Test":

ป้อนคำอธิบายรูปภาพที่นี่

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


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

เพื่อความสนุกฉันสร้างโครงสร้างหกเหลี่ยมอย่างง่ายที่พิกเซลสามารถเป็น RGB ได้ แน่นอนฉันไม่รู้ว่าสิ่งนี้จะดูบนอุปกรณ์จริงได้อย่างไร แต่ก็ดูเท่

ป้อนคำอธิบายรูปภาพที่นี่


คำอธิบายอย่างไม่เป็นทางการ - ภาพประกอบซึ่งสามารถ
ช่วยอธิบายสถานการณ์:

ป้อนคำอธิบายรูปภาพที่นี่


1
ฉันไม่เห็นด้วยกับส่วนใดส่วนหนึ่งของ 1 เพราะบางส่วน) ก3dmdesign.com/development/hexmap-coordinates-the-easy-way (แม้ว่าจะแน่ใจว่ามันอาจจะยากกว่าในการตั้งค่า แต่ไม่มีความยากลำบากในการทำแผนที่พิกัดกับพวกเขา) และ b) ตั้งแต่เมื่อใดรายละเอียดของคอมพิวเตอร์ที่ออกแบบโดยคำนึงถึงมนุษย์เป็นหลัก
ทิม

@Tim รายละเอียดของคอมพิวเตอร์ไม่ได้ แต่ตัวมนุษย์มีแนวโน้มที่จะรักษาข้อมูลในลักษณะ "สี่เหลี่ยม" และในทางกลับนำไปสู่การออกแบบที่แปลก มีตัวอย่างมากมายเช่นrobonautนี้ ทำไมหุ่นยนต์ถึงดูเหมือนมนุษย์? จากมุมมองตามหลักสรีรศาสตร์หุ่นยนต์ตัวนี้ควรจะเป็นเหมือนปลาหมึกยักษ์ แต่ผู้คนเป็นคน
Mikhail V

1
@ MikailV สร้างหุ่นยนต์เหมือนมนุษย์ทำให้มันสามารถใช้สิ่งต่าง ๆ ที่มนุษย์สร้างขึ้นได้ ไม่อย่างนั้นทุกอย่างจะต้องทำขึ้นเป็นพิเศษสำหรับหุ่นยนต์
Thorbjørn Ravn Andersen

@ ThorbjørnRavnAndersenใช่เหมือนเสื้อยืดและแว่นกันแดด :)
มิคาอิล V

1
สามเหลี่ยมจะไม่ดีกว่ารูปหกเหลี่ยมเพราะพวกเขาสามารถทำทุกอย่างได้และอีกมากมาย?
Raynet

9

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

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

จากนั้นก็มีคนสัญชาตญาณตามธรรมชาติที่มีรูปแบบสี่เหลี่ยม คุณมีเมทริกซ์เป็นคณิตศาสตร์ซึ่งมีเลย์เอาต์เดียวกัน ในทำนองเดียวกันกรอบพิกัดคาร์ทีเซียนค่อนข้างง่ายต่อการใช้งานและทำความเข้าใจในกรณีทั่วไปส่วนใหญ่ รับดัชนีของพิกเซลที่ (x, y) เป็นเพียง x + width * y (ไม่ใช่วิธีอื่น ๆ - การสร้างดัชนีสแกนไลน์แบบดั้งเดิม) หากความกว้างเป็นทวีคูณของ 2 คุณไม่จำเป็นต้องคูณด้วยซ้ำ การทำงานกับมุมที่ไม่ถูกต้องทำให้เกิดภาวะแทรกซ้อนมากมายที่เกิดจากพีชคณิตเวกเตอร์เมื่อเวกเตอร์พื้นฐานไม่ใช่มุมฉาก: การหมุนไม่ใช่การทับซ้อนของ cos / sin แบบง่ายอีกต่อไป การแปลกลายเป็นเรื่องแปลก สิ่งนี้ทำให้เกิดความซับซ้อนในการคำนวณนานมาก (จะมีราคาแพงกว่าในการคำนวณสองสามครั้ง) และ ความซับซ้อนของรหัส (ฉันจำได้ว่าการเข้ารหัสอัลกอริทึมของ Bresenham หนึ่งครั้งและฉันไม่ต้องการลองทำด้วยวิธีเลขฐานสิบหก)

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

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

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


"สิ่งนี้นำมาซึ่งปัญหาอันใหญ่หลวงของแนวนอน / แนวตั้งการแปลง" <... > "นี่เป็นปัญหาสำหรับพิกเซลสี่เหลี่ยม" - Oxymoron ฉันไม่มีนิสัยหมุนจอภาพของฉันดังนั้นทำไมจะหมุนภาพ 90 *
มิคาอิล V

มีหน้าจอแนวตั้งอยู่มากมาย (หน้าจอมาถึง / ออกที่สถานีรถไฟบางแห่งแผงโฆษณาต่าง ๆ เป็นต้น) ซึ่งคุณสามารถดูได้จริง ๆ แล้วหน้าจอปกติหมุน 90 องศา สังเกต: img.worsethanfailure.com/images/200710/error'd/…
orion

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

อีกตัวอย่างหนึ่งคือโทรศัพท์คือแท็บเล็ตที่หมุนภาพตลอดเวลาแบบไดนามิก ทั้งข้อมูล (รูปแบบไฟล์) และหน้าจอจำเป็นต้องมีพิกเซลกำลังสองที่สมเหตุสมผล (ไม่ว่าฮาร์ดแวร์จะทำอะไรเพื่อแสดงจริง) อัลกอริทึมการวาดเส้นเป็นปัญหาในการกำหนด: Bresenham ทำให้มั่นใจได้ว่าเส้นมีความหนาหนึ่งพิกเซลอย่างแม่นยำทั้งแนวนอนหรือแนวตั้ง (ขึ้นอยู่กับความลาดชัน) ออฟเซ็ตความกว้างครึ่งหนึ่งของบรรทัดอื่น ๆ ในตารางฐานสิบหกทำให้ชัดเจนว่า "หนาหนึ่งพิกเซล" หมายถึงอะไร แน่นอนว่าสามารถทำได้ แต่คุณต้องกำหนดและหาอัลกอริทึมใหม่ก่อน
orion

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

8

พิกเซลสแควร์เป็น "สิ่งที่ต้องทำ" นักประดิษฐ์ Russel Kirsch กล่าว:

“ แน่นอนสิ่งที่เป็นตรรกะไม่ใช่ความเป็นไปได้เพียงอย่างเดียว… แต่เราใช้กำลังสอง มันเป็นสิ่งที่โง่มากที่ทุกคนในโลกได้รับความทุกข์ทรมานนับ แต่นั้นมา”

http://www.wired.com/2010/06/smoothing-square-pixels/


7

คำถามนี้เกี่ยวกับการจัดเรียงมากกว่ารูปร่างที่แท้จริงของพิกเซล

ปัญหาเกี่ยวกับการจัดเรียงหกเหลี่ยมคือการแปลไซต์หกเหลี่ยมเป็นพิกัดคาร์ทีเซียนและในทางกลับกันก็ไม่ได้เป็นเรื่องเล็กน้อย

ไม่ว่าคุณจะทำงานกับดัชนีขัดแตะ Bravais แบบดั้งเดิม

https://en.wikipedia.org/wiki/Bravais_lattice

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

ในกรณีแรกมีการแปลงมุมที่เกี่ยวข้องและในแต่ละวินาทีต้องการพิกเซลx, yและดัชนีฐานjที่จะระบุ

ดังนั้นในตอนท้ายพิกเซล "สี่เหลี่ยม" จะต้องเป็นผลพลอยได้จากวัฒนธรรมคาร์ทีเซียนของเรา

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

ดูที่นี่http://www.kybervision.com/resources/Blog/HumanRetinaMosaic.pngและกลับไปยังจุดแสดงผลhttp://www.kybervision.com/Blog/files/AppleRetinaDisplay.html ที่นี่

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

ในที่สุดคำพูดจากนักประดิษฐ์ของพิกเซลตารางที่http://www.wired.com/2010/06/smoothing-square-pixels

Russell Kirsch ผู้ประดิษฐ์สี่เหลี่ยมจัตุรัสกลับไปที่กระดานวาดภาพ ในปี 1950 เขาเป็นส่วนหนึ่งของทีมที่พัฒนาพิกเซลสี่เหลี่ยมจัตุรัส '' สี่เหลี่ยมเป็นสิ่งที่ต้องทำ "Kirsch กล่าว "แน่นอนสิ่งที่ตรรกะไม่ได้เป็นไปได้เพียง แต่เราใช้สี่เหลี่ยม. มันเป็นสิ่งที่โง่มากที่ทุกคนในโลกที่ได้รับความทุกข์ทรมานจากนับตั้งแต่ . ตอนนี้เกษียณแล้วและอาศัยอยู่ในพอร์ตแลนด์โอเรกอน Kirsch เพิ่งออกเดินทางเพื่อแก้ไขแรงบันดาลใจจากผู้สร้างภาพโมเสคของสมัยโบราณที่สร้างฉากของรายละเอียดที่น่าทึ่งด้วยบิตของกระเบื้อง Kirsch ได้เขียนโปรแกรมที่เปลี่ยน ภาพให้เป็นภาพที่ราบรื่นขึ้นที่ทำจากพิกเซลที่มีรูปร่างแตกต่างกัน '


2
ฉันจะพูดแบบนี้: 3dmdesign.com/development/hexmap-coordinates-the-easy-wayค่อนข้างเล็กน้อยใช่ไหม?
ทิม

ใช่ (ข้อดี) แต่ระบบพิกัดนั้นยังไม่เป็นระบบคาร์ทีเซียน ตัวอย่างเช่นพื้นที่ "hexmap" ของพื้นผิวของ "3x3" ไม่ใช่ 9 (ไม่ใช่แม้แต่โดยประมาณ) มันไม่ได้เป็นเรื่องของมุมมันเป็นเรื่องของตัวชี้วัดตาข่ายหกเหลี่ยมไม่ได้เป็นสี่เหลี่ยมหมุน (หรือสี่เหลี่ยม) หมุน
alfC

จุดยุติธรรม - แต่มันไม่จำเป็นต้องใช้คาร์ทีเซียน?
ทิม

1
อย่างที่ฉันพูดไม่ใช่หลักการฉันคิดว่ามันเป็นปัญหาของกระบวนทัศน์มากกว่า (เทคโนโลยีอคติวัฒนธรรมและเทคโนโลยีเหนียวเทคโนโลยีเป็นการเปลี่ยนแปลงที่แยกยาก)
alfC

ฉันจะไม่ยอมรับว่ามันเป็นการเปลี่ยนกระบวนทัศน์ครั้งใหญ่ สำหรับกรณีแบบดิจิตอลล้วนๆการเปลี่ยนการตั้งค่าค่อนข้างง่าย ในทางปฏิบัติคุณต้องมีชุดที่แยกจากกันเพื่อให้ฟังก์ชั่น "blit" รู้ตำแหน่งที่จะเขียนข้อมูล สำหรับข้อมูลภาพจากแหล่งสี่เหลี่ยมนั้นมีปัญหา และเพื่อสร้างแบบอักษรสำหรับการแสดงผลแบบเลขฐานสิบหกจะง่ายกว่าบนสี่เหลี่ยมจัตุรัส
Mikhail V

7

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

เพื่อให้คุณสามารถใช้พิกเซลเซ็นเซอร์ที่ไม่เป็นเส้นตรง คุณต้องเตรียม:

  1. จัดวางองค์ประกอบที่ไวต่อแสงในลักษณะที่ไม่เป็นเส้นตรง (เช่นวงกลมที่บรรจุด้วยฐานสิบหก)
  2. จัดวางสายไฟที่เก็บประจุ (เช่น CMOS / CCD) ด้วยวิธีที่ไม่เป็นเส้นตรง
  3. ปรับขนาดเลย์เอาต์นี้เป็น >> 1M x 1M เพื่อตอบสนองความต้องการของตลาด
  4. จับคู่ (หรือสอดแทรก) ข้อมูลกับจอแสดงผลเป็นเส้นตรง

เพื่อให้คุณสามารถใช้พิกเซลแสดงผลที่ไม่เป็นเส้นตรงคุณต้องมีสิ่งเดียวกันทั้งหมด

หลายคนพยายามสร้างกล้องfovealและจอแสดงผล (ความละเอียดสูงตรงกลางที่ดวงตาของเราดีที่สุดและมีความละเอียดต่ำที่รอบนอก) ผลลัพธ์มักเป็นสิ่งที่มีค่าใช้จ่ายสูงและมีความสามารถน้อยกว่าเซ็นเซอร์แบบเส้นตรง

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


เซนเซอร์พิกเซลแบบสี่เหลี่ยมจัตุรัสธรรมดาจะกลายเป็นหนึ่งเดียวกับพิกเซลสี่เหลี่ยมหากใช้หลังเลนส์ anamorphic เช่นเดียวกับโบเก้ที่กลายเป็นรูปไข่
JDługosz

4

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


คุณพล็อต + x 100% เพื่อรับแถวเต็ม จากนั้นแถวถัดไปจะถูกชดเชยด้วย + 50% และเลื่อนลง 75% แถวที่สามถูกชดเชยจากแถวที่สอง -50% (หรือ 0% จากแถวแรก) ขณะนี้เป็นความซับซ้อนมากขึ้นฉันเถียงก็ยังคงได้ง่าย - และ Hex ระบบพิกัดที่มีอยู่เมื่อเทียบกับมาตรฐานคาร์ทีเซียน - ลาดชัน Y โดย 30 ° 3dmdesign.com/development/hexmap-coordinates-the-easy-way
ทิม

4

มีสองวิธีในการตอบคำถามนี้:

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

ในทั้งสองกรณีพิกเซลไม่จำเป็นต้องเป็นสี่เหลี่ยมจัตุรัส แต่เป็นเช่นนั้นตามแบบแผน ตัวชี้กรณี: จอแสดงผลแบบจอกว้างก่อนหน้าใช้จำนวนพิกเซลเท่ากันทั้งในฮาร์ดแวร์และซอฟต์แวร์ - เป็นแบบที่ไม่ใช่แบบจอกว้าง แต่พิกเซลเป็นรูปสี่เหลี่ยมผืนผ้าแนวความคิด (ขนาดแนวนอนมากกว่าขนาดแนวตั้ง) แทนที่จะเป็นแนวความคิด มาตรฐาน. อย่างไรก็ตามการใช้รูปทรงพิกเซลที่ไม่ได้ประมาณสแควร์นั้นไม่ได้มาตรฐานและมีแนวโน้มที่จะก่อให้เกิดปัญหาความเข้ากันได้อย่างมากในการใช้งานอย่างน้อยทุกวัน

คำตอบสั้น ๆ :

พิกเซลถือว่าเป็นสี่เหลี่ยมจัตุรัสตามแบบแผน


-1

จากมุมมอง POV ของฉันต้องบอกว่ามันเป็นเพราะหน้าจอที่คุณรับชมแบบนี้เป็นรูปสี่เหลี่ยมผืนผ้าอยู่แล้ว อัตราส่วนกว้างยาวทั่วไปคือ 1920 x 1080 ความยาวบางช่วงเช่น 720 อนุญาตให้ "ความคมชัดสูง" ได้รับการยอมรับ การทำเช่นนี้อาจทำได้ยากยิ่งขึ้นเมื่อใช้พิกเซลวงกลมหรือหกเหลี่ยม


3
วงกลมที่ดีไม่ได้ทำการทดสอบ แต่ฉันไม่เห็นว่าทำไมคุณไม่สามารถย่อส่วนหกเหลี่ยมได้ ดูภาพที่ฉันทำจากรถ - พอดีกับมันมากกว่านี้?
ทิม

และอัตราส่วนภาพเหล่านั้นเป็นรูปสี่เหลี่ยมผืนผ้าที่ดีเพราะพิกเซลรูปร่างถูกวางใน ... กริด
ทิม

1
@Tim tessellation อาจไม่สำคัญจากมุมมอง "ผู้ใช้" เมื่อคุณยกเลิกการทำดัชนีแบบคาร์ทีเซียนหรือการทำดัชนีปกติ เรติน่าไม่ได้รับการทดสอบ (สมบูรณ์) และอาจเหมาะสมที่สุด (ตัวอย่างเช่นเพื่อหลีกเลี่ยงmoiré en.wikipedia.org/wiki/Moir%C3%A9_patternหรือสิ่งประดิษฐ์การเลี้ยวเบนแสง)
alfC
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.