Mengapa piksel persegi?


207

Piksel di layar berbentuk persegi, tapi saya tidak yakin mengapa.

Kedua gambar pixelated terlihat sangat buruk - tapi saya tidak yakin ada keuntungan dari kotak di atas segi enam di sini.

Hexagons juga membagi menjadi 3 warna dengan baik:

Jadi apa keuntungan dari kotak di layar LCD / CRT?


20
Tolong jelaskan tentang konteksnya. Apakah Anda mengacu pada tampilan, format gambar atau cetakan? Dan bahkan kemudian, pertanyaan ini mungkin terlalu luas.
Daniel B

66
Pixel adalah unit logis tanpa dimensi dan tidak pernah persegi dalam aktualitas, seperti yang disarankan @DanielB, setiap rasterizer menanganinya secara berbeda. Gambar Google "piksel layar" misalnya.
Yorik

5
Pertanyaan ini mungkin harus dimigrasikan ke Pengalaman Pengguna atau Teknik Listrik .
curiousdannii


13
Saya tidak mengerti. Mengapa ini dibalik sama sekali, dan mengapa belum dimigrasi ke forum teknik mesin?
Carl Witthoft

Jawaban:


264

Piksel di layar berbentuk persegi, tapi saya tidak yakin mengapa.

Mereka tidak (tentu) persegi.

Beberapa orang akan berpendapat bahwa mereka tidak pernah persegi ("A pixel adalah sampel titik. Itu hanya ada pada suatu titik.").


Jadi apa keuntungan dari kotak di layar LCD / CRT?

  • Pengaturan lain (seperti segitiga, segi enam atau poligon pengisian ruang lainnya ) lebih mahal secara komputasi.

  • Setiap format gambar didasarkan pada piksel (bentuk apa pun itu) disusun dalam susunan persegi panjang.

  • Jika kita memilih bentuk atau tata letak lain, banyak perangkat lunak harus ditulis ulang.

  • Semua pabrik yang saat ini memproduksi display dengan tata letak piksel persegi panjang harus dipasang kembali untuk beberapa tata letak lainnya.


Kepraktisan Menggunakan Sistem Koordinat Heksagonal

Pada umumnya ada empat pertimbangan utama yang harus dipertimbangkan ketika menggunakan sistem koordinat heksagonal:

  • Konversi Gambar - Perangkat keras yang mampu menangkap gambar dari dunia nyata langsung ke kisi heksagonal sangat khusus, sehingga tidak tersedia secara umum untuk digunakan. Oleh karena itu, diperlukan cara yang efisien untuk mengubah gambar berkisi-kotak standar menjadi gambar heksagonal sebelum pemrosesan apa pun dapat dilakukan.
  • Mengatasi dan Penyimpanan - Setiap manipulasi yang dilakukan pada gambar harus dapat mengindeks dan mengakses masing-masing piksel (dalam hal ini segi enam dan bukan kuadrat), dan gambar apa pun dalam bentuk heksagonal harus dapat disimpan dalam bentuk heksagonal (jika tidak, konversi gambar harus dilakukan setiap waktu gambar diakses). Selain itu, sistem pengindeksan yang mudah diikuti dan membuat aritmatika fungsi tertentu lebih sederhana akan sangat berharga.
  • Operasi Pemrosesan Gambar - Agar dapat menggunakan sistem koordinat heksagonal secara efektif, operasi harus dirancang atau dikonversi yang diarahkan untuk mengeksploitasi kekuatan sistem, dan khususnya kekuatan sistem pengalamatan yang digunakan untuk pengindeksan dan penyimpanan.
  • Tampilan Gambar - Seperti benar-benar mendapatkan gambar di tempat pertama, perangkat tampilan secara umum tidak menggunakan kisi heksagonal. Oleh karena itu gambar yang dikonversi harus dikembalikan ke formulir yang dapat dikirim ke perangkat output (apakah monitor, printer atau entitas lain) dengan tampilan yang dihasilkan muncul dalam proporsi dan skala alami. Sifat pasti dari konversi ini tergantung pada metode pengindeksan yang digunakan. Ini bisa berupa pembalikan sederhana dari proses konversi asli, atau menjadi lilitan yang lebih besar.

Masalah dengan Sistem Koordinat Heksagonal

Namun ada beberapa masalah dengan sistem koordinat heksagonal. Salah satu masalah adalah bahwa orang sangat terbiasa dengan kisi persegi tradisional.

Penalaran dalam heksa bisa tampak tidak wajar dan karenanya agak sulit. Walaupun dapat dikatakan bahwa orang dapat menjadi terbiasa dengan hal itu jika mereka harus, tetap saja mereka secara alami cenderung mengarah pada penalaran dengan sistem koordinat tradisional Cartesian secara default, dengan sistem heksagonal hanyalah pilihan sekunder.

Kurangnya perangkat input yang memetakan ke kisi heksagonal, dan kurangnya perangkat output yang menampilkan seperti itu juga merupakan hambatan:

  • Perlunya mengkonversi dari kotak ke segi enam dan kembali lagi mengurangi manfaat dari operasi pada kisi heksagonal.

  • Karena kisi-kisi semacam itu lebih rapat daripada kisi-kisi kuadrat ekuivalen dengan ukuran semu yang sama, kecuali gambar dimasukkan dengan resolusi yang sengaja lebih tinggi daripada yang akan dioperasikan, gambar yang dikonversi harus mengekstrapolasi beberapa lokasi piksel (yang umumnya kurang diinginkan daripada memiliki semua piksel disediakan langsung dari sumber).

  • Konversi kembali ke kisi-kisi persegi akan meruntuhkan beberapa lokasi piksel menjadi satu sama lain, yang mengakibatkan hilangnya detail yang jelas (yang dapat menghasilkan gambar berkualitas lebih rendah daripada yang awalnya dimasukkan).

Jika seseorang berusaha untuk menggunakan sistem koordinat heksagonal dalam pekerjaan visi mereka sendiri, maka mereka harus terlebih dahulu menentukan apakah masalah ini lebih besar daripada keuntungan yang melekat dari operasi dengan heksagon.

Sumber Sistem Koordinat Hexagonal


Apakah ada bentuk atau tata letak lain yang sudah dicoba?

Layar XO-1 menyediakan satu warna untuk setiap piksel. Warna sejajar sepanjang diagonal yang berjalan dari kanan atas ke kiri bawah. Untuk mengurangi artefak warna yang disebabkan oleh geometri piksel ini, komponen warna gambar dikaburkan oleh pengontrol tampilan saat gambar dikirim ke layar.

Perbandingan tampilan XO-1 (kiri) dengan tampilan kristal cair khas (LCD). Gambar menunjukkan 1 × 1 mm dari setiap layar. LCD tipikal menunjuk kelompok 3 lokasi sebagai piksel. OLPC XO LCD membahas setiap lokasi sebagai piksel terpisah:

masukkan deskripsi gambar di sini

Sumber OLPC XO

Tampilan lain (terutama OLED) menggunakan tata letak yang berbeda - seperti PenTile :

masukkan deskripsi gambar di sini

Tata letak terdiri dari quincunx yang terdiri dari dua subpiksel merah, dua subpiksel hijau, dan satu subpiksel biru tengah di setiap sel unit.

Itu terinspirasi oleh biomimikri retina manusia yang memiliki jumlah sel kerucut tipe L dan M yang hampir sama, tetapi secara signifikan lebih sedikit kerucut S. Karena kerucut S terutama bertanggung jawab untuk merasakan warna biru, yang tidak cukup mempengaruhi persepsi pencahayaan, mengurangi jumlah subpiksel biru sehubungan dengan subpiksel merah dan hijau dalam tampilan tidak mengurangi kualitas gambar.

Layout ini dirancang khusus untuk bekerja dengan dan tergantung pada rendering subpixel yang hanya menggunakan satu dan seperempat subpixel per piksel, rata-rata, untuk membuat gambar. Yaitu, bahwa setiap piksel input yang diberikan dipetakan ke piksel logis berpusat merah, atau piksel logis berpusat hijau.

Sumber keluarga matriks PenTile


Definisi piksel yang sederhana

Salah satu dari titik - titik yang sangat kecil yang bersama-sama membentuk gambar di layar televisi, monitor komputer, dll.

Sumber http://www.merriam-webster.com/dictionary/pixel


Pixel

Dalam pencitraan digital, elemen piksel, pel, atau gambar adalah titik fisik dalam gambar raster, atau elemen terkecil yang dapat dialamatkan dalam perangkat layar semua titik yang dapat dialamatkan; jadi itu adalah elemen terkecil yang dapat dikontrol dari gambar yang ditampilkan di layar.

...

Sebuah piksel tidak perlu dirender sebagai kotak kecil . Gambar ini menunjukkan cara-cara alternatif merekonstruksi gambar dari sekumpulan nilai piksel, menggunakan titik, garis, atau pemfilteran halus.

masukkan deskripsi gambar di sini

Sumber Pixel


Rasio aspek piksel

Sebagian besar sistem pencitraan digital menampilkan gambar sebagai kisi-kisi piksel persegi kecil. Namun, beberapa sistem pencitraan , terutama yang harus kompatibel dengan gambar bergerak televisi definisi standar, menampilkan gambar sebagai kotak piksel persegi panjang, di mana lebar dan tinggi piksel berbeda . Pixel Aspect Ratio menjelaskan perbedaan ini.

Sumber rasio aspek Pixel


Pixel Bukan A Little Square!

Piksel adalah sampel titik. Itu ada hanya pada suatu titik.

Untuk gambar berwarna, sebuah piksel mungkin sebenarnya mengandung tiga sampel, satu untuk setiap warna primer yang berkontribusi pada gambar pada titik pengambilan sampel. Kita masih bisa menganggap ini sebagai sampel titik warna. Tetapi kita tidak bisa menganggap piksel sebagai kuadrat atau apa pun selain titik.

Ada kasus-kasus di mana kontribusi terhadap suatu piksel dapat dimodelkan, dengan urutan rendah, dengan kuadrat kecil, tetapi tidak pernah piksel itu sendiri.

Sumber A Pixel Bukan A Little Square! (Microsoft Technical Memo 6 Alvy Ray Smith, 17 Juli 1995)


5
Kutipan diperlukan pada titik "lebih mahal secara komputasi". Tautan ideal ke makalah penelitian yang mempertimbangkan tessellation heksagonal misalnya dan analisis komputasi. Agak terdengar seperti Anda hanya menyebutkan beberapa penjelasan yang masuk akal.
djechlin

4
Kami juga menulis ulang banyak perangkat lunak setiap saat sebagai bagian dari perbaikan. Saya tidak yakin maksud Anda.
djechlin

5
@djechlin Saat ini semua spesifikasi video / gambar didasarkan pada array piksel persegi panjang. Tampilan video atau gambar apa pun akan membutuhkan konversi dari sistem koordinat persegi (kartesian) ke sistem koordinat heksagonal. Perhitungan untuk menggambar garis pada sistem koordinat persegi panjang lebih sederhana daripada menggambar pada sistem koordinat heksagonal (ini adalah matematika dasar). Perlu saya jelaskan lebih lanjut?
DavidPostill

2
@djechlin Jawaban diperbarui dan kutipan disertakan
DavidPostill

4
+1 untuk Sumber Memo Microsoft Tech Anda. Jawaban yang luar biasa secara umum.
shock_gone_wild

71

Saya ingin menawarkan alternatif untuk jawaban David Postill yang dipikirkan dengan matang. Dalam jawabannya, ia mendekati pertanyaan tentang piksel yang persegi, seperti judulnya. Namun, dia membuat komentar yang sangat mendalam dalam jawabannya:

Beberapa orang akan berpendapat bahwa mereka tidak pernah persegi ("A pixel adalah sampel titik. Itu hanya ada pada suatu titik.").

Posisi ini sebenarnya dapat memunculkan jawaban yang sama sekali berbeda. Alih-alih berfokus pada mengapa setiap piksel adalah kuadrat (atau tidak), ia dapat berfokus pada mengapa kita cenderung mengatur sampel titik ini menjadi kisi-kisi persegi panjang. Sebenarnya tidak selalu seperti itu!

Untuk membuat argumen ini, kita akan bermain bolak-balik antara memperlakukan gambar sebagai data abstrak (seperti kisi-kisi poin), dan implementasinya dalam perangkat keras. Terkadang satu pandangan lebih bermakna dari yang lain.

Untuk memulai, mari kita mundur cukup jauh. Fotografi film tradisional sama sekali tidak memiliki "kisi-kisi", yang merupakan salah satu alasan mengapa gambar-gambar itu selalu tampak begitu tajam dibandingkan dengan yang digital modern. Alih-alih, ia memiliki "butiran" yang merupakan distribusi acak kristal pada film. Itu kira-kira seragam, tapi itu bukan bujursangkar yang bagus. Organisasi butiran ini muncul dari proses produksi film, menggunakan sifat kimia. Akibatnya, film benar-benar tidak memiliki "arah" untuk itu. Itu hanya percikan informasi kedua.

Maju cepat ke TV, khususnya CRT pemindaian lama. CRT membutuhkan sesuatu yang berbeda dari foto: mereka harus dapat mewakili konten mereka sebagai data. Secara khusus, itu harus berupa data yang dapat mengalirkan, secara analog, melalui kabel (biasanya sebagai rangkaian voltase yang terus berubah). Foto itu 2d, tapi kami perlu mengubahnya menjadi struktur 1d sehingga hanya bisa bervariasi dalam satu dimensi (waktu). Solusinya adalah mengiris gambar dengan garis (bukan piksel!). Gambar itu dikodekan baris demi baris. Setiap baris adalah aliran data analog, bukan pengambilan sampel digital, tetapi garis-garis dipisahkan satu sama lain. Dengan demikian, data itu terpisah dalam arah vertikal, tetapi kontinu dalam arah horizontal.

TV harus membuat data ini menggunakan fosfor fisik, dan TV berwarna memerlukan kisi untuk membaginya menjadi piksel. Setiap TV dapat melakukan ini secara berbeda dalam arah horizontal, menawarkan lebih banyak piksel atau lebih sedikit piksel, tetapi mereka harus memiliki jumlah garis yang sama. Secara teori, mereka bisa mengimbangi setiap baris piksel lainnya, persis seperti yang Anda sarankan. Namun, dalam praktiknya ini tidak diperlukan. Bahkan, mereka melangkah lebih jauh. Dengan cepat disadari bahwa mata manusia menangani gerakan sedemikian rupa sehingga mereka hanya mengirim setengah gambar setiap frame! Pada satu bingkai, mereka akan mengirim garis bernomor ganjil, dan pada bingkai berikutnya, mereka akan mengirim garis bernomor genap, dan menjahitnya bersama-sama.

Sejak saat itu, mendigitalkan gambar yang saling terkait ini telah menjadi sedikit trik. Jika saya memiliki gambar garis 480, saya sebenarnya hanya memiliki setengah data di setiap frame karena interlacing. Hasil ini sangat terlihat ketika Anda mencoba melihat sesuatu bergerak cepat melintasi layar: setiap baris untuk sementara bergeser 1 frame dari yang lain, menciptakan garis-garis horizontal pada benda-benda yang bergerak cepat. Saya menyebutkan ini karena itu agak lucu: saran Anda mengimbangi setiap baris di grid dengan setengah piksel ke kanan, sementara interlacing menggeser setiap baris lain di grid dengan setengah waktu!

Terus terang, lebih mudah membuat kisi-kisi persegi panjang yang bagus untuk berbagai hal. Tanpa alasan teknis untuk melakukan yang lebih baik dari itu, itu macet. Kemudian kita memasuki era komputer. Komputer diperlukan untuk menghasilkan sinyal video ini, tetapi mereka tidak memiliki kemampuan analog untuk menulis garis analog. Solusinya wajar, data dipecah menjadi piksel. Sekarang datanya terpisah baik secara vertikal maupun horizontal. Yang tersisa hanyalah memilih cara membuat kisi.

Membuat kotak persegi panjang itu sangat alami. Pertama, setiap TV di luar sana sudah melakukannya! Kedua, matematika untuk menggambar garis pada kotak persegi panjang jauh lebih sederhana daripada menggambarnya pada heksagonal. Anda mungkin mengatakan "tetapi Anda bisa menggambar garis-garis halus dalam 3 arah pada kisi heksagonal, tetapi hanya 2 pada yang persegi panjang." Namun, kotak persegi panjang membuatnya mudah untuk menggambar garis horizontal dan vertikal. Kisi heksagonal hanya dapat dibuat untuk menggambar satu atau yang lain. Di era itu, tidak banyak orang menggunakan bentuk heksagonal untuk upaya non-komputasi mereka (kertas persegi panjang, pintu persegi panjang, rumah persegi panjang ...). Kemampuan membuat horizontal dan halusgaris-garis vertikal jauh melampaui nilai membuat citra penuh warna yang halus ... terutama mengingat bahwa tampilan pertama adalah monokrom dan itu akan menjadi waktu yang lama sebelum kelancaran citra memainkan peran utama dalam berpikir.

Dari sana, Anda memiliki preseden yang sangat kuat untuk kisi persegi panjang. Perangkat keras grafis mendukung apa yang dilakukan perangkat lunak (kotak persegi panjang), dan perangkat lunak menargetkan perangkat keras (kotak persegi panjang). Secara teori, beberapa perangkat keras mungkin mencoba membuat kisi heksagonal, tetapi perangkat lunak itu tidak memberikan imbalan, dan tidak ada yang mau membayar perangkat keras dua kali lebih banyak!

Ini mempercepat kita ke hari ini. Kami masih menginginkan garis-garis horizontal dan vertikal yang halus dan bagus, tetapi dengan tampilan retina kelas atas, itu semakin mudah. Namun, pengembang masih dilatih untuk berpikir dalam hal kotak persegi panjang yang lama. Kami melihat beberapa API baru mendukung "koordinat logis" dan melakukan anti-aliasing untuk membuatnya tampak seperti ada ruang 2d penuh terus menerus untuk bermain dengan daripada grid piksel 2d yang kaku, tetapi lambat. Akhirnya, kita mungkin melihat kisi heksagonal.

Kami benar-benar melihat mereka, hanya saja tidak dengan layar. Dalam cetakan, sangat umum untuk menggunakan kisi heksagonal. Mata manusia menerima grid heksagonal lebih cepat daripada menerima grid persegi panjang. Ini ada hubungannya dengan garis cara "alias" di sistem yang berbeda. Kisi heksagonal alias dengan cara yang kurang keras, yang membuat mata lebih nyaman (jika kisi heks perlu naik satu baris ke atas atau ke bawah, mereka dapat melakukannya dengan lancar melalui transisi diagonal. Kisi-kisi persegi harus dilewati, menciptakan hapus diskontinuitas)


2
Sangat bagus untuk menjelaskan bagaimana TV menjadi: aliran analog. Standar ini bertahan selama 70 tahun dan menambahkan warna dilakukan dengan cara yang menjaga kompatibilitas dengan B / W, coba selesaikan hari ini! Berapa banyak format video yang ada sekarang?

3
"" "TV harus membuat data ini menggunakan fosfor fisik, dengan kotak untuk membaginya menjadi piksel." "" - apakah ini benar untuk TV Hitam Putih? Pemahaman saya adalah bahwa "fosfor fisik" diskrit (yang masih belum pernah berhubungan dengan item seperti piksel dalam aliran data) datang dengan TV berwarna, dan CRT monokrom hanya memiliki lapisan terus-menerus dari bahan fosfor.
Random832

Saya suka sejarahnya, tetapi saya tidak setuju mengenai transisi ke perangkat modern. Meskipun warisan tampak bujursangkar, TV sebenarnya analog dalam arah horizontal sampai Anda melihat fosfor warna di TV. Ini sebenarnya heksagonal! Saya menyarankan bahwa alasan sebenarnya kita memiliki bujursangkar adalah tata letak VLSI lebih mudah sebagai bujursangkar daripada dikemas secara heksagon.
user3533030

1
Dalam TV hitam dan putih, mengapa Anda tidak hanya mengoleskan fosfor di atas permukaan dan membiarkan aliran elektron menjadi lebih kuat / lebih lemah dan membuatnya bercahaya lebih / kurang dengan cara yang sepenuhnya analog? Singkatnya, mengapa memiliki piksel (horizontal) sama sekali? Setelah Anda memiliki warna, segalanya menjadi lebih rumit; tetapi meskipun demikian, sinyal warna tidak didefinisikan secara per-pixel jika saya ingat dengan benar. Sedangkan untuk sampel horizontal, jumlah sampel yang diperlukan untuk menyusun kembali sinyal dari sampel intensitas seragam adalah fungsi dari bandwidth frekuensi, dan offset setengah "sampel" tidak meningkatkan ini.
Yakk

2
@Yakk Kebanyakan CRT hitam dan putih dibangun persis seperti itu - CRT BW TV awal berasal dari Radar / Oscilloscope CRT yang sering dikontrol dalam analog X / Y atau mode polar tanpa raster. TV masih menggunakan pemindaian baris demi baris karena itu sesuai dengan bagaimana sinyal dikodekan, tetapi tidak ada piksel pada garis. Beberapa tampilan khusus (sebagian besar untuk kokpit pesawat terbang) bahkan menggunakan fosfor yang berubah warna tergantung pada seberapa kuat mereka dipukul dengan berkas elektron (tampilan semacam itu disebut penetron).
rackandboneman

21

Dua alasan:

  • Bentuk persegi panjang versus lingkaran, triangluar, atau lebih dari 4-sisi memiliki keunggulan yang dapat ditempatkan di sebelah persegi panjang lainnya dengan minimum "ruang terbuang". Ini memastikan bahwa area penuh dari pixel berkontribusi pada gambar. Bentuk lain bisa ada yang "cocok bersama", tetapi mereka mungkin akan lebih kompleks untuk diproduksi daripada kotak sederhana atau persegi panjang, namun tidak memberikan keuntungan tambahan.

  • Tampilan piksel tujuan umum - yang dapat digunakan untuk menampilkan semua jenis informasi harus memiliki piksel yang tidak mendukung jenis bentuk tertentu. Jadi piksel harus persegi bukannya lebih panjang atau lebih lebar dalam satu arah, dan tidak dicukur atau diputar dengan cara apa pun.

    • Jika piksel lebih tinggi daripada lebar, ketebalan minimum garis horizontal akan lebih lebar dari ketebalan minimum garis vertikal, membuat garis horizontal dan vertikal terlihat berbeda, untuk jumlah piksel yang sama.

    • Jika piksel diputar, maka hanya garis miring yang cocok dengan sudut rotasi yang akan terlihat halus, garis lainnya akan terlihat bergerigi. Sebagian besar sistem operasi dan perangkat lunak produktivitas bergantung pada garis lurus sehingga akan banyak egde bergerigi atau bergerigi.

    • Pixel yang dicukur (belah ketupat) akan menjadi yang terburuk dari kedua dunia - baik diagonal atau horizontal / vertikal tidak akan mulus.

Jika Anda tidak tertarik pada tampilan tujuan umum, tetapi satu diarahkan untuk tujuan tertentu, maka Anda bisa lebih fleksibel. Contoh ekstrem adalah LED 7-segmen, jika yang perlu Anda lakukan hanyalah menampilkan angka, 7 piksel non-persegi yang diatur sedemikian rupa adalah semua yang Anda butuhkan. Atau LED 15-segmen yang memungkinkan huruf.


Hmm, saya tidak yakin argumen biaya berfungsi untuk segi enam (saya bisa saja salah).
Tim

@Tim - Anda harus melakukan riset tentang masalah ini. Jika ada keuntungan teknis untuk segi enam yang akan digunakan oleh pembuat layar, fakta bahwa mereka tidak digunakan, menunjukkan bahwa mereka tidak memiliki keunggulan apa pun dari keunggulan biaya atau kinerja.
Ramhound

2
@Ramhound ya, mengerti. Saya perlu penelitian lebih lanjut - baik pertanyaan ini adalah penelitian saya. Saya menanyakan alasan mengapa tidak segi enam - bukan mengapa kuadrat (dan tautan ke beberapa perbandingan biaya akan lebih baik - idk jika ada yang pernah membuat satu)
Tim

2
"mereka mungkin akan lebih kompleks untuk diproduksi daripada kotak sederhana atau persegi panjang" - kutipan diperlukan. "namun tidak memperkenalkan kelebihan tambahan" - kutipan diperlukan.
Raphael

1
@ Raphael Yah, Anda tidak benar-benar membutuhkan kutipan untuk itu - pada CRT, "piksel" bukan kotak atau persegi panjang. Mereka memiliki distribusi warna yang bagus, dan membutuhkan "trik" rendering sub-pixel yang lebih sedikit. Ketika LCD muncul, mereka tidak bisa membandingkan - teknologinya sangat pro-persegi panjang, sehingga tata letak yang lebih tradisional kurang lebih mungkin. Tentu saja, "LCD" modern belum tentu benar-benar LCD - Anda tidak akan menemukan "kristal cair" dalam OLED, misalnya. Akhirnya, segi enam (atau CRT sekolah lama, ini serupa) akan bekerja dengan baik untuk gambar dan film, tetapi tidak untuk UI.
Luaan

15

Piksel tidak harus persegi!

Sebelumnya piksel memiliki bentuk persegi panjang . Itulah sebabnya di setiap editor gambar / video profesional seperti Photoshop, Premiere, Sony Vegas ... Anda melihat opsi rasio aspek piksel . Hanya TV modern dan monitor PC standar yang memiliki piksel persegi.

Rasio aspek Photoshop pixel

Contoh terkenal:

  • PAL Analog TV / DVD: 720x576 yang jelas bukan 16: 9 atau 4: 3 tetapi 5: 4. Namun ketika mengatur rasio aspek piksel yang benar itu akan menghasilkan gambar output yang benar tidak terambil

  • NTSC Analog TV / DVD: 720x480 yaitu 3: 2. Setelah mengatur rasio aspek itu akan menjadi 16: 9 atau 4: 3 seperti PAL di atas. Resolusi vertikal yang lebih rendah juga menjelaskan mengapa DVD NTSC terlihat jauh lebih renyah daripada PAL

  • VCD : PAL 352x288 , NTSC 352x240 . Keduanya menggunakan rasio aspek layar 4: 3
  • SVCD : 480x480 , dan tidak mengejutkan itu tidak menghasilkan output persegi
  • DV : 1440x1080 16: 9 resolusi full HD
  • CGA : 320x200 dan 640x200 dalam 4: 3 (ya, layar komputer lama memang memiliki piksel persegi panjang)
  • EGA mendukung 640x350 untuk layar 4: 3 selain 320x200 dan 640x200

Adobe Premiere Pro - Bekerja dengan rasio aspek


7
Jawaban ini dapat ditingkatkan dengan menjelaskan lebih banyak tentang rasio aspek (bukan hanya tautan). Tidak jelas, dengan sendirinya, mengapa resolusi layar tertentu tidak dapat memiliki piksel persegi.
Jon Bentley

1
Saya tidak mengerti hubungan antara piksel persegi dan resolusi.
AL

@ A seperti yang sudah saya nyatakan di atas. 720: 576 adalah 5: 4 dan jika pikselnya persegi, itu akan menghasilkan rasio aspek 5: 4. Namun, jika rasio aspek piksel diatur ke nilai yang berbeda dari 1, rasio aspeknya akan berbeda. Tapi di mana saya katakan tentang resolusi di sini? Saya baru saja mengatakan aspek rasio
phuclv

3
@AL: Jawaban ini membuktikan bahwa tidak semua piksel di layar (atau file) berbentuk persegi: beberapa berbentuk persegi panjang.
Slebetman

1
Komputer Atari 8-bit memiliki beberapa mode grafis dengan resolusi 80x192, menghasilkan piksel yang sangat tidak berbentuk bujur sangkar.
DaveP

10

Jawabannya adalah: mereka harus heksagonal, karena ubin heksagonal memberikan kualitas optik yang optimal, sehingga akan menjadi masa depan.
Tapi saya pikir ada dua alasan utama mengapa mereka masih persegi:

  • Lebih mudah untuk merepresentasikan data gambar bitmap pada kotak persegi sebagai array 2d (baik untuk kesederhanaan perangkat keras dan untuk manusia)
  • Itu terjadi secara historis sehingga akan terjadi untuk beberapa waktu karena alasan # 1.

Memperbarui

Topik ini menegangkan. Hampir 10k dilihat. Orang-orang ingin menguasai pixel :) Lucu bagaimana seseorang menemukan hubungan pertanyaan dengan resolusi layar atau "kuadrat" dari sebuah quad.
Bagi saya itu adalah: blok bangunan mana, persegi atau segi enam yang memberikan hasil optik yang lebih baik ?

Pertama, kita membutuhkan ubin sederhana, tetapi yang mencakup area khusus lebih baik dan itu memang ubin segi enam. Yang dapat dengan mudah dipahami dari tes sederhana. Tes yang kuat akan disebut tes "cincin". Untuk kesederhanaan di sini saya membuat warna trinary: 0 - background, 1 - grey dan 2 - black.

Menatap dengan titik, kami akan mencoba memperluas cincin, menjaganya agar terus menerus seperti ini:

masukkan deskripsi gambar di sini

Pasti saya juga ingin menggambar garis horizontal / vertikal, untuk banyak tugas, seperti UI dan desain cetak, atau permainan platformer. Sebut saja "Tes Bar":

masukkan deskripsi gambar di sini

Dengan tes ini saya dapat memilih gaya garis yang hanya terlihat lebih baik dalam kondisi nyata. Dengan garis vertikal bahkan lebih sederhana. Untuk tampilan tugas tertentu, semuanya dapat dibuat dengan kode-keras, jadi untuk menggambar garis dengan sebuah fungsi, kami hanya mengulangi segmennya dalam arah horizontal. Masalahnya adalah, kedua pendekatan pixel persegi dan heksagonal bekerja, tetapi jika Anda mencoba tes yang sama dengan ubin persegi, Anda akan melihat perbedaannya dengan cepat. Dengan DPI yang sangat tinggi itu tidak terlalu terlihat, tetapi mengapa mencoba membuat lebih banyak DPI daripada mencoba pendekatan yang lebih efektif? Saya tidak melihat banyak akal.


Untuk warna RGB, ini mungkin membutuhkan struktur yang lebih kompleks. Sebenarnya, saya ingin memiliki perangkat grayscale, seperti pada gambar di atas. Akan keren juga memiliki respons piksel cepat untuk membuat animasi.

Hanya untuk bersenang-senang saya membuat struktur heksagonal sederhana, di mana pikselnya bisa RGB. Tentu saja saya tidak tahu bagaimana ini bisa terlihat pada perangkat nyata, tetapi terlihat keren meskipun begitu.

masukkan deskripsi gambar di sini


Sebuah penjelasan-ilustrasi informal yang dapat
membantu menggambarkan situasi:

masukkan deskripsi gambar di sini


1
Saya sebagian tidak setuju dengan kedua bagian 1 karena a) 3dmdesign.com/development/hexmap-coordinates-the-easy-way (walaupun yakin mungkin akan sedikit lebih sulit untuk diatur, tetapi tidak ada kesulitan dalam memetakan koordinat untuk mereka) dan b) Sejak kapan detail komputer dirancang dengan mempertimbangkan manusia.
Tim

@Tim Rincian komputer tidak, tetapi manusia cenderung memperlakukan informasi dengan cara "persegi panjang", dan pada gilirannya mengarah ke desain yang aneh. Ada banyak contoh, seperti robonaut ini. Jadi mengapa membuat robot terlihat seperti manusia? Dari sudut pandang ergonomis, robot ini harus lebih seperti gurita, tetapi manusia adalah manusia.
Mikhail V

1
@MikhailV membuat robot seperti manusia, memungkinkannya menggunakan hal-hal yang dibuat untuk manusia. Kalau tidak semuanya harus dibuat khusus untuk robot.
Thorbjørn Ravn Andersen

@ ThorbjørnRavnAndersen Ya, seperti t-shirt dan kacamata matahari :)
Mikhail V

1
Bukankah segitiga lebih unggul dari segi enam karena mereka dapat melakukan segala yang segi enam dapat dan banyak lagi?
Raynet

9

Beberapa jawaban sudah menyentuh ini ... Saya pikir array non-persegi panjang dalam hal penyimpanan data akan menciptakan kompleksitas yang hampir tidak terbayangkan dan akan sangat rawan kesalahan. Saya sudah memiliki banyak pengalaman dengan pemodelan sistem fisik di mana grid tidak persegi panjang (grid terhuyung-huyung - titik data di setengah-tepi dan sebagainya). Pengindeksan adalah mimpi buruk.

Pertama, ada masalah bagaimana mendefinisikan batas. Gambar biasanya persegi panjang (sekali lagi, ini adalah masalah sejarah - jika layar kita heksagonal, hal-hal akan sedikit lebih mudah). Jadi, bahkan batas gambar pun bukan garis lurus. Apakah Anda memasukkan jumlah piksel yang sama di setiap baris? Apakah Anda berganti genap / ganjil? Dan ... apakah piksel kiri bawah ke kiri ke yang di atasnya, atau ke kanan? Anda segera mendapatkan hampir 10 standar yang berbeda, dan programmer harus mengingat setiap kali bagaimana kelanjutannya (bahkan perbedaan baris-utama dan kolom-utama atau perbedaan pengindeksan top-down / bottom-up terkadang menyebabkan kesalahan). Ini membawa masalah besar lanskap konversi / potret (transformasi alami, yang sepele pada kotak persegi panjang, tetapi membutuhkan interpolasi dan hampir selalu merupakan prosedur yang hilang pada hex atau kotak yang berbeda).

Lalu ada naluri alami yang dimiliki orang dengan tata letak persegi panjang. Anda memiliki matriks dalam matematika, yang memiliki tata letak yang sama. Demikian pula, kerangka koordinat kartesius adalah yang paling mudah digunakan dan dipahami dalam kebanyakan kasus umum. Mendapatkan indeks piksel pada (x, y) hanya x + lebar * y (bukan sebaliknya - warisan pengindeksan garis pemindaian). Jika lebar adalah kelipatan dari 2, Anda bahkan tidak perlu multiplikasi. Bekerja dengan sudut yang tidak benar membuat banyak komplikasi yang berasal dari aljabar vektor, ketika vektor basis tidak ortogonal: rotasi tidak lagi superposisi cos / sin sederhana. Terjemahan menjadi aneh. Ini membawa banyak kompleksitas komputasi (akan beberapa kali lebih mahal untuk dihitung), dan kompleksitas kode (saya ingat pernah mengkode algoritma Bresenham satu kali, dan saya benar-benar tidak ingin mencoba melakukannya dalam hex).

Interpolasi dan antialiasing pada umumnya memiliki banyak algoritma yang bergantung pada kotak persegi. Interpolasi bilinear, misalnya. Semua metode pemrosesan berbasiskan-empat juga terikat pada kisi-kisi persegi panjang (FFT sangat berguna dalam pemrosesan gambar) ... yah, kecuali Anda melakukan transformasi mahal dan rugi terlebih dahulu.

Itu semua menunjukkan bahwa data dalam memori dan format file harus disimpan sebagai kotak persegi panjang. Bagaimana Anda menampilkannya tergantung pada perangkat layar / printer, tetapi itu harus menjadi masalah driver. Data tersebut seharusnya perangkat-independen dan tidak boleh menganggap perangkat keras apa yang Anda miliki. Seperti yang diperlihatkan dalam posting di atas, ada banyak keuntungan menggunakan piksel nonrektangular, karena fisiologi mata manusia dan faktor-faktor teknologi lainnya - simpan saja data di kotak persegi, atau Anda akan memiliki segerombolan pemrogram neurotik untuk menjawab: )

Terlepas dari semua ini, saya benar-benar bermain dengan pemikiran memiliki pengaturan piksel melingkar untuk integrasi dalam tampilan jam (membuat garis tangan lurus). Ketika saya mulai membayangkan betapa sulitnya membuat gambar apa pun sesederhana garis lurus yang tidak melewati bagian tengah, saya sampai pada banyak kesimpulan yang saya sebutkan di atas.


"Ini membawa masalah besar lanskap konversi / potret" <...> "Ini bahkan masalah untuk piksel persegi panjang" - Oxymoron? Saya pribadi tidak punya kebiasaan memutar monitor saya jadi mengapa harus memutar gambar 90 *.
Mikhail V

Ada banyak layar vertikal di luar sana (layar kedatangan / keberangkatan di beberapa stasiun kereta api, berbagai panel iklan dan sebagainya) yang dapat Anda lihat sebenarnya hanya layar biasa yang diputar 90 derajat. Amati: img.worsethanfailure.com/images/200710/error'd/…
orion

Ini disebut "penggunaan peralatan yang tidak benar". Omong-omong, algoritma menggambar garis untuk titik-titik sembarang pada hex grid mungkin bisa diselesaikan tanpa kerumitan. Saya tidak pernah melakukannya, jadi saya mencoba ramalan, bisa jadi akan lebih elegan daripada kotak persegi.
Mikhail V

Contoh lain adalah ponsel adalah tablet, yang memutar gambar sepanjang waktu secara dinamis. Baik data (format file) dan layar harus memiliki piksel persegi yang logis untuk itu (apa pun yang dilakukan perangkat keras untuk benar-benar menampilkannya). Algoritma menggambar garis bermasalah dalam definisi: Bresenham memastikan garis tepat satu ketebalan pixel baik secara horizontal atau vertikal (tergantung pada kemiringan). Setengah lebar offset dari setiap garis lain dalam hex grid membuatnya ambigu apa arti "satu pixel tebal". Tentu, itu bisa dilakukan, tetapi Anda harus mendefinisikan dan menurunkan algoritme lagi.
orion

"perlu memiliki piksel persegi" Di sinilah masalahnya. Perangkat layar tidak boleh diproduksi dengan mempertimbangkan hal ini, bahwa seseorang ingin memutarnya. Ini hanya kesalahpahaman yang juga mengarah ke kesalahpahaman perangkat lunak dan lapisan abstraksi yang berlebihan. Mengenai perhitungan: khususnya dalam visi komputer, banyak solusi efektif yang sifatnya tri-directional, jika Anda akan melakukan hal-hal semacam ini, koordinat kutub sangat membantu.
Mikhail V


7

Pertanyaan ini lebih banyak tentang pengaturan daripada bentuk sebenarnya dari sebuah piksel.

Masalah dengan pengaturan heksagonal adalah bahwa menerjemahkan situs heksagonal menjadi koordinat kartesius dan sebaliknya tidak sepele.

Entah Anda bekerja dengan indeks kisi Bravais primitif

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

atau Anda bekerja dengan sel konvensional persegi panjang dan menambahkan beberapa "vektor basis" internal. (Anda memerlukan dua vektor basis untuk kisi persegi terkecil dan sekitar 16 untuk kisi persegi terkecil).

Dalam kasus pertama ada transformasi sudut yang terlibat dan dalam pixel kedua setiap kebutuhan x, ydan indeks dasar jharus ditentukan.

Jadi pada akhirnya, piksel "persegi" harus menjadi produk sampingan dari budaya Cartesian kita.

Ngomong-ngomong, akan sangat keren untuk memiliki teknologi itu tetapi sangat tidak sesuai dengan paradigma saat ini. Faktanya sistem biologis, lebih suka hexagon ketika memproduksi kisi untuk sistem visual. Pikirkan mata lalat. Retina manusia juga mengikuti sesuatu yang lebih dekat ke heksagonal (dari persegi).

Lihat di sini http://www.kybervision.com/resources/Blog/HumanRetinaMosaic.png dan kembali ke titik pamer http://www.kybervision.com/Blog/files/AppleRetinaDisplay.html

Saya tidak ragu bahwa kisi heksagonal lebih sesuai untuk visualisasi. Tetapi Anda dapat memikirkannya dengan cara ini, setiap kali insinyur ingin meningkatkan tampilan yang mereka hadapi dilema berikut, 1) beralih ke heksagonal, mengubah paradigma, menulis ulang trillon garis kode dan perangkat keras 2) membuat "kotak" lebih kecil, menambah memori, menambah dua angka untuk ukuran tampilan dalam piksel. Opsi 2) selalu lebih murah.

Akhirnya sepatah kata dari penemu pixel persegi http://www.wired.com/2010/06/smoothing-square-pixels

Russell Kirsch, penemu pixel persegi, kembali ke papan gambar. Pada 1950-an, ia adalah bagian dari tim yang mengembangkan pixel persegi. "Kotak adalah hal yang logis untuk dilakukan," kata Kirsch. "Tentu saja, hal yang logis bukan satu-satunya kemungkinan tetapi kami menggunakan kotak. Itu adalah sesuatu yang sangat bodoh bahwa semua orang di dunia telah menderita sejak itu . ' Sekarang sudah pensiun dan tinggal di Portland, Oregon, Kirsch baru-baru ini berangkat untuk menebus kesalahan. Terinspirasi oleh pembangun mosaik zaman kuno yang membangun adegan detail yang memukau dengan potongan ubin, Kirsch telah menulis sebuah program yang mengubah kotak digital yang tebal dan kikuk dari digital. gambar menjadi gambar yang lebih halus yang terbuat dari piksel yang bervariasi bentuknya. '


2
Saya akan mengatakan ini: 3dmdesign.com/development/hexmap-coordinates-the-easy-way cukup sepele?
Tim

Ya, (poin bagus) tetapi sistem koordinat itu masih belum bersifat cartesian. Misalnya, wilayah "hexmap" permukaan "3x3" tidak 9 (bahkan tidak kurang). Ini bukan masalah sudut, ini masalah metrik, kisi heksagonal bukan kisi persegi (atau persegi) yang diputar.
alfC

Titik adil - tetapi Cartesian tidak diharuskan bukan?
Tim

1
Seperti yang saya katakan, bukan pada prinsipnya, saya pikir itu lebih merupakan masalah paradigma. (Teknologi dan teknologi bias budaya lengket, teknologi sulit diubah secara terpisah).
alfC

Saya tidak akan setuju bahwa itu adalah perubahan besar paradigma. Untuk kasus digital murni, itu perubahan saran cukup sederhana. Praktis Anda memerlukan set diskrit yang sama, sehingga fungsi "blit" tahu di mana harus menulis data. Adapun data gambar dari sumber persegi panjang, ya ada masalah. Dan untuk membuat font untuk tampilan hex akan lebih sederhana daripada di kotak (kurang sakit kepala dengan lereng).
Mikhail V

7

Untuk menghargai mengapa pixel bujursangkar memiliki nilai, Anda perlu memahami proses pembuatan sensor dan tampilan. Keduanya berdasarkan tata letak silikon. Keduanya berasal dari asal VLSI.

Agar Anda dapat menerapkan piksel sensor non-bujursangkar , Anda harus siap untuk:

  1. Letakkan elemen-elemen peka cahaya dengan cara yang tidak bujursangkar (mis. Lingkaran yang mengandung hex).
  2. Letakkan kabel yang mengumpulkan muatan (mis. CMOS / CCD) dengan cara non-bujursangkar
  3. Skala tata letak ini ke >> 1M x 1M untuk memenuhi permintaan pasar
  4. Sesuaikan (atau sisipkan) informasi dengan tampilan bujursangkar

Agar Anda dapat mengimplementasikan piksel tampilan non-bujursangkar , Anda memerlukan semua hal yang sama.

Banyak orang telah mencoba membuat kamera foveal dan layar (beresolusi tinggi di tengah di mana mata kita terbaik, beresolusi rendah di bagian luar). Hasilnya selalu sesuatu yang lebih mahal dan kurang mampu daripada sensor bujursangkar.

Realitas efisiensi komersial adalah Anda dapat memimpikan sensor / tampilan non-bujursangkar, tetapi tidak hemat biaya atau dapat diskalakan saat ini.


Sensor piksel aspek persegi konvensional akan berubah menjadi satu dengan piksel persegi panjang jika digunakan di belakang lensa anamorfik. Sama seperti bokeh menjadi elips.
JDługosz

4

Meskipun secara fisik mereka mungkin tidak persegi. Mereka secara abstrak direpresentasikan sebagai kotak, dan ketika ditampilkan pada layar dengan resolusi yang lebih rendah mereka terlihat sebagai kotak. Sebagian besar karena kemalasan, dan kurang pemrosesan. Menskalakan bentuk yang berbeda seperti segi enam membutuhkan lebih banyak pemrosesan, saat Anda memotong sebagian kecil piksel. Sedangkan kotak hanya mengalikan setiap sisi dengan konstanta. Juga mencoba untuk merencanakan hex grid Anda tidak bisa hanya melakukan X, Y lokasi yang mudah.


Anda plot + x 100% untuk mendapatkan baris penuh. Kemudian baris berikutnya diimbangi +50% dan turun 75%. Baris ketiga diimbangi dari baris kedua sebesar -50% (atau 0% dari baris pertama). Meskipun ini lebih rumit, saya berpendapat itu masih mudah - dan sistem koordinat Hex ada, sebagai lawan dari kartesian standar - kemiringan Y dengan 30 ° 3dmdesign.com/development/hexmap-coordinates-the-easy-wayway .
Tim

4

Ada dua cara untuk menjawab pertanyaan ini:

  1. Dalam perangkat keras, piksel tidak harus secara fisik berbentuk bujur sangkar, tetapi dapat berupa bentuk atau pengaturan apa pun yang oleh produsen perangkat layar dianggap sesuai. Pada kenyataannya, mereka sering tidak persegi.
  2. Dalam perangkat lunak, piksel dianggap "kuadrat" karena dianggap mewakili area dengan lebar dan tinggi yang sama. Ini tidak berarti bahwa ketika diterjemahkan, misalnya jika diperbesar, mereka harus digambarkan sebagai kotak, tetapi mereka harus mewakili data untuk area gambar yang memiliki proporsi kuadrat, jika tidak, gambar akan tampak memanjang dengan satu atau lain cara. Ini murni berdasarkan konvensi.

Dalam kedua kasus tersebut, piksel tidak harus berbentuk bujur sangkar, tetapi seperti itu murni berdasarkan konvensi. Contoh kasus: tampilan layar lebar awal menggunakan jumlah piksel yang sama - baik dalam perangkat keras maupun perangkat lunak - seperti layar non-layar lebar, tetapi piksel tersebut secara konseptual persegi panjang (ukuran horizontal lebih besar daripada ukuran vertikal) daripada secara konseptual persegi seperti halnya standar. Namun demikian, menggunakan bentuk piksel yang tidak mendekati kotak adalah non-standar dan cenderung menyebabkan masalah kompatibilitas besar, setidaknya dalam penggunaan sehari-hari.

JAWABAN SINGKAT:

Piksel diperlakukan sebagai kotak dengan konvensi.


-1

Dari POV pengamat, saya harus mengatakan itu karena layar yang biasanya Anda tonton adalah persegi panjang. Rasio aspek umum adalah 1920 kali 1080. Melewati masa tertentu seperti 720 memungkinkan "definisi tinggi" dikenali. Ini bisa sangat sulit untuk dicapai dengan piksel lingkaran atau heksagonal.


3
Nah, melingkar tidak menguraikan, tapi saya tidak melihat mengapa Anda tidak bisa hanya mengecilkan segi enam. Lihat gambar yang saya buat dari mobil - hanya lebih cocok dengan mereka?
Tim

Dan aspek-aspek rasio baik persegi panjang karena bentuk piksel diletakkan di ... Sebuah kotak.
Tim

1
@Tim, tessellation mungkin tidak begitu penting dari sudut pandang "pengguna" begitu Anda menyerah pada pengindeksan kartesian atau reguler. Retina tidak di-tessellated (sempurna) dan itu bahkan bisa optimal (misalnya untuk menghindari moiré en.wikipedia.org/wiki/Moir%C3%A9_pattern atau artefak difraksi cahaya).
alfC
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.