2013.01.12 20:15
prosty sposób na bezstratną kompresję obrazków o wielkości 100x100 pikseli
Jest 2^(3*8*100*100) możliwych obrazków o rozmiarach 100x100 pikseli. Trzeba by zrobić listę ich wszystkich, a następnie posortować tę listę tak, żeby na początku były obrazki, które ludzie często mogą chcieć oglądać - kwiatki, ładne samochody, zachody słońca - a na końcu mało ciekawe bezsensowne obrazki, wojny mrówek, szum i mezgi. Następnie wszystkie obrazki na tak posortowanej liście po kolei numerujemy. I teraz jak potrzebujemy przesłać obrazek wielkości 100x100 pikseli, to zamiast przesyłać go, przesyłamy jego numer, pomijając w tej liczbie znajdujące się na początku zera. Dostajemy w ten sposób fajny sposób bezstratnej kompresji obrazków. Dodatkowo, ponieważ nieskompresowany obrazek ma 3*8*100*100 bitów, największa liczba w naszej liście ma w zapisie dwójkowym też 3*8*100*100 cyfr, a niektóre mają cyfr mniej, udało nam się - wbrew twierdzeniu o zliczaniu ( http://pl.wikipedia.org/wiki/Kompresja_bezstratna#Twierdzenie_o_zliczaniu_.28counting_theorem.29 ) - zrobić algorytm kompresujący, które nie powiększa żadnej informacji, a niektóre zmniejsza.
komentarze:
2013.01.14 04:46 Daniel
Ale jeśli przesyłasz liczbę w kodzie o zmiennej długości, to musisz mieć jakiś sposób na stwierdzenie \"to jest koniec liczby\". Różne kody sobie różnie z tym radzą (zobacz np. kody Golomba), ale zawsze wiąże się to z dodatkowymi bitami w przypadku niektórych liczb. Twierdzenia o zliczaniu / zasady szufladkowej Dirichleta jednak nie przeskoczysz.
2013.01.14 04:48 Daniel
Oraz sprawdź swoją instalację pehapa. Mój Chrome wyświetla oczojebnie czerwony ekran i mówi, że \"witryna prawdopodobnie zainfekuje Twój komputer - czy chcesz więcej informacji o fetolbus.ru?\"
2013.01.21 12:14 Piotrek
Tak, wiem o tym problemie. Jestem w trakcie naprawiania wszystkiego i bardzo wkrótce dojdę i do tego.
powrót na stronę główną
RSS