Czy sześciokątna matryca pikseli może bardziej efektywnie przechowywać obraz?


11

Większość monitorów komputerowych i telewizorów ma prostokątny układ pikseli rozmieszczonych na kwadratowej (lub prawie kwadratowej) sieci. Czy sześciokątna sieć zapewni lepszą jakość obrazu dla tej samej liczby pikseli? Innymi słowy, czy ta sama ilość pamięci pozwoliłaby na przechowywanie większej ilości szczegółów?

Mam intuicyjne wrażenie, że (przynajmniej nieznacznie) więcej szczegółów powinno być możliwe z tej samej liczby pikseli z heksagonalną siecią, ponieważ (dla obrazu o ustalonym obszarze) średnia odległość do najbliższego środka piksela będzie mniejsza niż w przypadku sieci kwadratowej . Chciałbym, aby różnica została zdefiniowana bardziej konkretnie.


Nawet jeśli odpowiedź brzmi „tak”, nie oczekuję, że producenci monitorów nagle zaczną tworzyć piksele o układzie sześciokąta. Zadaję jednak to pytanie, ponieważ zastanawiam się, czy można coś zyskać na przechowywaniu obrazów jako sześciokątnych sieci pikseli, nawet jeśli są one tłumaczone na kwadratowe sieci pikseli na potrzeby wyświetlania.


1
Aby wymyślić to pytanie, musiałeś mieć pewne zalety sześciokątnego układu pikseli. Czy możesz dodać je do pytania?
nitishch,

@ nititch to była jedyna zaleta, o której myślałem. Czy moja edycja lepiej sobie radzi?
trichoplax

Wymiana stosu DSP (przetwarzanie sygnału) prawdopodobnie miałaby dla ciebie bardziej formalną odpowiedź na temat tej BTW.
Alan Wolfe,


1
FWIW, słyszałem o wyświetlaczach (zwykle bardzo dużych wyświetlaczy na stadionach), które używają konfiguracji delta-nabla. (Nazwany od greckiej litery delta „Δ” i hebrajskiej litery nabla „∇”, ponieważ piksele były naprzemiennie trójkątami z punktem skierowanym w górę, potem w dół, potem w górę, a następnie w dół.) Jednym z przykładów jest Philips Vidiwall.
user1118321

Odpowiedzi:


8

Oto moje zdanie na ten temat. Piksel nie jest kwadratem, a nawet prostokątem. Piksel to punkt (nieskończenie mały), z którym powiązany jest kolor.

Jedynym sposobem, w jaki osobiście widziałem piksele oglądane (interpretowane) przez wyświetlacz, jest próbkowanie „najbliższego sąsiada”, gdzie piksele znajdowały się na prostokątnej siatce, co oznacza, że ​​kolor dowolnej przestrzeni na ekranie jest kolorem piksel, który jest najbliżej.

Jest to fantazyjny sposób powiedzenia „piksele są prostokątne i ułożone na siatce”, ale zostańcie ze mną w tej sprawie: P

W rezultacie formaty obrazów mają również swoje piksele przechowywane w siatce, przy założeniu, że do wyświetlenia zostanie również użyty najbliższy sąsiad w siatce. Na przykład wiele obrazów ma wbudowane wygładzanie, dzięki czemu będą dobrze wyglądać, gdy zostaną wyświetlone na „najbliższej sąsiedniej siatce”.

Interaktywne aplikacje (gry) mogą używać tekstur, które nie mają być wyświetlane tak, jak na siatkach najbliższych sąsiadów, dlatego stanowią pewien wyjątek od tej reguły. Robią to, ponieważ w ramach wykonywania robią wygładzanie krawędzi, dwuliniowe próbkowanie tekstur itp., Aby każdy obraz wypychany na ekran wyglądał dobrze, gdy wyświetlacz pokazuje go jako najbliższą sąsiednią siatkę!

Zbliżając się do pytania: czy siatka sześciokątna miałaby jakieś zalety?

Myślę, że tak!

Po pierwsze, myślę, że najbliższy sąsiad wyglądałby lepiej. Nie mam żadnego prawdziwego dowodu na to, przepraszam, ale sześciokąt bardziej zbliża się do koła, a ponieważ nie jest to zwykła siatka danych, myślę, że twoje oko dostaje lepszą dystrybucję danych. Przepraszam, to trochę falująca ręka.

Myślę, że dużą część tego, dlaczego lepiej by to wyglądało, jest to, że filtrowanie liniowe pobierałoby informacje od 6 sąsiadów zamiast 4 i interpolowałoby na osi 3 zamiast 2. Więcej informacji z mniej regularnie rozmieszczonych próbek niż siatka daje = lepszy wynikowy obraz.

Wykonywanie interpolacji sześciennej byłoby również lepsze niż interpolacja sześcienna na siatce, więc jakość skaluje się wraz ze wzrostem jakości algorytmu.

Jeśli chodzi o to, czy przechowuje dane bardziej wydajnie, fakt, że może on lepiej filtrować przy mniejszej ilości danych, oznacza dla mnie, że tak, mógłby przechowywać dane bardziej wydajnie.

I myślę, że wreszcie ... może mógłbyś wykorzystać te właściwości na swoją korzyść. Być może możesz mieć format obrazu zapisany w formacie heksagonalnym niższej rozdzielczości, a następnie, zanim będziesz musiał wyświetlić obraz w czasie wykonywania, możesz użyć algorytmów próbkowania, aby przekonwertować go z powrotem na siatkę.

Może byłby nawet dobry sposób, aby zrobić to skutecznie w module cieniującym piksele, aby zużywałby mniej pamięci w czasie wykonywania?

To ciekawy pomysł (:

PS - jak fajnie byłoby mieć wyświetlacz analogowy (bez pojedynczych pikseli, ale ciągła kolorowa powierzchnia), który patrzyłby na dane w pikselach, które przesłałeś nie jako prostokąty, ale jako punkty próbkowania na ciągłej powierzchni. Może trochę tam…


2
Nie musisz przechowywać każdej płaszczyzny kolorów w każdym pikselu, ani mieć płaszczyzn w tej samej konfiguracji. ALE tracisz możliwość oddzielnego filtrowania
joojaa

Słuszne uwagi! Rozdzielne filtrowanie jest dość duże. Zastanawiam się, czy mógłbyś wykonać 3-osiowe filtrowanie sześciokątów?
Alan Wolfe,

4

Jeśli przyjrzysz się starym wyświetlaczom telewizyjnym CRT, zobaczysz czerwone, zielone i niebieskie kropki luminoforu w trójkątnej sieci. Niektóre telewizory LCD miały nieco podobny układ; piksele były prostokątne, a nie kwadratowe, ale kolejne rzędy pikseli były przesunięte w taki sposób, że pozioma pozycja czerwonego piksela w jednym rzędzie znajdowałaby się w połowie odległości między pozycjami najbliższych czerwonych pikseli w rzędzie powyżej i pasowała do pozycji czerwonego piksel dwa rzędy w górę.

Podczas wyświetlania obrazów „analogowych” takie układy poprawią wizualną jakość obrazu, którą można uzyskać przy danej liczbie pikseli. Na wyświetlaczach komputerowych jest jednak wiele linii, które powinny wyglądać idealnie poziomo, i wiele linii, które powinny wyglądać idealnie pionowo. Prostokątna siatka może pomieścić oba z łatwością. Sześciokątna siatka może jednak pomieścić tylko jedno lub drugie, a ta, która nie jest dostosowana, będzie wyglądać dość nieprzyjemnie postrzępiona.


Więc nie jest dobre dla programu Excel :)
joojaa
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.