Wyliczanie rozdzielczości ekranu z ilości pikseli i proporcji

Witam, jestem ciekawy jak oblicza się rozdzielczość ekranu znając jedynie proporcję i ilość pikseli:
na przykład proporcja 16:9 i ilość pikseli 16 588 400. Szukałem dosłownie wszędzie i jedynie widzę kalkulatory rozdzielczości na proporcje i rozmiaru wydruku… z moich (błędnych) wyliczeń uzyskałem rozdzielczość 5120x2880=14745600 czyli za mało, jest w stanie ktoś pomóc? dzięki z góry :smiley:

W czym problem ???

(sqrt - pierwiastek)

1 polubienie

Przecież to proste równanie matematyczne - niech x będzie liczbą pikseli krótszego boku, wtedy x*16/9 to będzie dłuższy bok, a łączna liczba pikseli to x * x*16/9. Z równania
x*x*16/9 = 16 588 400
wynika, że
x*x = 16588400*9/16
czyli
x*x = 9330975
czyli
x = 3055 (krótszy bok)
3055*16/9 = 5431 (dłuższy bok)

Zatem ekran ma rozdzielczość 3055 x 5431

albo mi się kalkulator popsuł albo coś nie tak wychodzi, 3055*5431=16 591 705, chyba że po prostu nie da się uzyskać “prawdziwej” proporcji 16:9 z łącznej liczby pikseli 16 588 400.

Trochę rozwijając odpowiedź Pablo_Wawa, jest to najzwyklejsze równanie dwóch zmiennych. Jeśli ekran ma rozdzielczość x na y pikseli, to z twoich danych:

  1. x * y = 16 588 400
  2. 9x = 16y

Tyle… Równanie na poziomie szkoły podstawowej.

Eh, ale koledze chyba nie o to chodziło…

Popatrzmy na to tak

1920/1080=16/9
1,777777777777778=1,777777777777778

To przykład dla Full HD.

Znamy wynik dla tej proporcji. Teraz idzie z górki. Mamy obraz dajmy na to 5184x2500 co daje nam 2,0736 czyli za dużo. bierzemy 5184 i dzielimy przez wynik z Full HD tj 1,777777777777778 co daje nam 2916. Nie rozciągniemy obrazka bez zniekształceń także musimy inaczej ciąć. Mnożymy 2500 z wynikiem z Full HD i dostajemy 4444,(4) w zaokrągleniu masz 4444. 4444x2500 daje nam wynik równania z Full HD 1,7776. Czyli blisko. Jeżeli chcemy idealnie przyciąć do zadanej rozdzielczości, co do piksela trzeba ciąć w obu krawędziach. Tego ułamka pikseli jednak nikt nie zauważy tak naprawdę.

Myślę, że autorowi o to chodziło mniej-więcej. Chyba ten sposób łatwiejszy niż bawienie się w równania. Wystarczy zapamiętać - po przecinku 15 cyfr, 14 siódemek i jedna ósemka. Oczywiście można zaokrąglić, ale wynik będzie mniej dokładny.

Jeszcze podsumuję
Dla odnalezienia szerokości, wysokość MNOŻYMY z 1,777777777777778
Dla odnalezienia wysokości, szerokość DZIELIMY przez 1,777777777777778

Jeszcze jeden edit, bo mnie zjedzo:

Dla innych proporcji robimy tak samo. Najpierw z proporcji, dajmy na to 21:5 wyliczamy sobie wartość dzieląc pierwszą liczbę przez drugą (przy 21:5 mamy 4,2) i z tym wynikiem robimy to samo co pokazałem przy full HD.

Ale co ty kombinujesz :slight_smile: Naprawdę nie wiem po co się za to brać lewą ręką przez prawe ucho. Jest to zwykłe zadanie z geometrii, na poziomie podstawówki. Mamy układ dwóch równań, który ma dokładnie jedno rozwiązanie. Naprawdę nie wiem, jaki sens ma do tego podchodzić w jakikolwiek inny sposób.

  1. x * y = 16 588 400
  2. 9x = 16y

Z 2. => x = 16 / 9 y (mogą być dowolne inne proporcje)
Podstawiamy pod 1. => y^2 = 16588400 /16 * 9
Wyliczamy y = sqrt( 16588400 /16 * 9 )
Wyliczamy x = 16 / 9 * y

koniec.

Że ja kombinuję? To układ równań ma być prostszy od zwykłego działania mnożenia i dzielenia? Rozpisałem się, bo chciałem wsio wyjaśnić.

Chcesz zmienić proporcje obrazka na 16:9.
16/9=1,77777777777778

Teraz w zależności którą wartość chcesz zmienić to mnożysz lub dzielisz przez 1,77777777777778 za pomocą prostego kalkulatora i wsio. Jak masz więcej różnorakich zdjęć czy filmów w różnych rozdzielczościach do obrobienia to obliczanie co chwilę układów równań jest drogą przez mękę. Ja wiem, że obliczanie układów równań jest cool, spoko, pro umiejętnością, ale po cholerę sobie życie utrudniać?

EDIT:
Dla ułatwienia sobie przyszłych zmian proporcji można sobie stworzyć tabelkę dla najpopularniejszych rozdzielczości, wrzucić to w Excela i tylko podkładać wartości.

EDIT2:

Zajęło mi to kilka minut. W żółtych polach wpisujesz wartości. Czerwone to szukana wysokość, zielone szukana szerokość. Formuła u góry.

Oczywiście można to obrobić tak, że żółte pola są obok siebie i tam wklejasz/wpisujesz wartości, ale dla tej szybkiej prezentacji wystarczy

EDIT3:
@kowgli
Patrz co Ci wyszło na końcu

Wyliczamy x = 16 / 9 * y

Zmieniając proporcje na 99% znasz przynajmniej jedną z wartości. Podstaw za “y” odpowiednią wartość i dochodzisz do tego samego co ja. No, połowy tego, bo wzór dla znanego “x” trzeba przekształcić.