• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Przetwarzanie obrazów - ujednolicanie obrazów png

Object Storage Arubacloud
0 głosów
243 wizyt
pytanie zadane 19 maja 2020 w C i C++ przez AlciaAlcia Nowicjusz (120 p.)
Zadano nam z uczelni napisanie programu do przetwarzania obrazów PNG. Jedną z jego funkcji ma być ujednolicanie dwóch obrazów, jak to zostało określone w zadaniu:

- ujednolicanie geometryczne (liczba kolumn i wierszy w obrazie)

-ujednolicanie rozdzielczościowe (w rastrze ujednolicenie rastra)

Dokładnie przestudiowałam format png, i jedyne co można w tym kontekście z niego wyczytać, to szerokość i wysokość obrazu w pikslach, a więc wnioskuję, że operacje te można przeprowadzić jedynie poprzez zmienianie tych wartości (i ew. wartości piksli)

Po konsultacjach z profesorem ustaliłam, że ujednolicając obrazy najpierw należy je ujednolicić rozdzielczościowo, a następnie geometrycznie. Ujednolicenie geometryczne ma polegać na tym, że jeśli po ujednoliceniu rozdzielczościowym obrazy wciąż mają różną liczbę kolumn i/lub wierszy, to trzeba je dodać w obrazie gdzie jest ich mniej i uzupełnić wartości piksli zerami. Nie rozumiem jednak na czym polegać ma ujednolicenie rozdzielczościowe. Podobno w formacie png "rozdzielczość obrazu to liczba jego piksli" - rozumiem więc, że należałoby przeskalować obraz z mniejszą ilością piksli tak, aby miał tyle samo co większy. To jednak nie we wszystkich obrazach jest możliwe z zachowaniem proporcji (np. obraz 3x3 przeskalować aby miał tyle samo piksli co obraz 4x7 tak, aby jednocześnie wciąż był kwadratowy). Jeśli jednak nie jest ważne zachowanie proporcji, i należałoby po prostu doprowadzić obraz mniejszy (z mniejszą ilością piksli) do wymiarów obrazu większego, to nie pozostałoby nic do zrobienia dla operacji ujednolicenia geometrycznego.

Bardzo proszę o wyjaśnienie na czym powinny polegać te dwie operacje, czym się różnią, ewentualnie o wskazanie błędów w moim rozumowaniu.
komentarz 19 maja 2020 przez j23 Mędrzec (194,920 p.)
Nie chodzi przypadkiem o to, by dwa obrazy miały te same proporcje i ten sam rozmiar?

1 odpowiedź

0 głosów
odpowiedź 19 maja 2020 przez mokrowski Mędrzec (156,100 p.)
Proponuję nie wynajdować koła na nowo: https://imagemagick.org/script/magick++.php

Tu masz przykłady działania biblioteki: https://imagemagick.org/script/examples.php

Oczywiście jest dostępny pakiet w systemach GNU/Linux.
komentarz 19 maja 2020 przez AlciaAlcia Nowicjusz (120 p.)
Niestety, takie rozwiązanie nie przejdzie. Mamy wszystkie funkcje zaimplementować własnoręcznie, dlatego zadaję takie a nie inne pytanie.

Podobne pytania

+2 głosów
0 odpowiedzi 135 wizyt
pytanie zadane 9 maja 2020 w C i C++ przez Czarus Obywatel (1,310 p.)
0 głosów
2 odpowiedzi 1,156 wizyt
pytanie zadane 9 kwietnia 2016 w C i C++ przez bimbrownik Mądrala (5,180 p.)
0 głosów
1 odpowiedź 661 wizyt
pytanie zadane 2 marca 2016 w C i C++ przez Waszek Gaduła (4,130 p.)

92,634 zapytań

141,505 odpowiedzi

319,883 komentarzy

62,015 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...