2013-04-09 30 views
5

Mam plik motion-JPEG 2000, który muszę określić, czy twórca użył kompresji bezstratnej, aby utworzyć ją na podstawie samego pliku. Nie mam nieprzetworzonych danych wideo do porównania i nie mam kodu źródłowego aplikacji używanej do utworzenia pliku.Jak wykryć bezstratną kompresję JPEG 2000?

Na podstawie tego, co znalazłem, wygląda na to, że najlepiej mogę zrobić, to sprawdzić filtr falkowy (biortogonalny 3/5) i wielkość kroku kwantyzacji (1), i przyjąć bezstratną, jeśli te warunki są prawdziwe.

Wszelkie sugestie dotyczące sprawdzania bezstratnej kompresji są bardzo mile widziane. Moje środowisko pracy to MATLAB lub Java, ale pomocne będą wskazówki dotyczące innych platform.

Odpowiedz

0

Możliwe jest użycie falki 5/4 i kwantyzacji o wartości 1, a mimo to obcinanie strumienia kodu podczas kodowania w celu uzyskania stratnego wyniku. To wciąż poprawne obrazy JPEG 2000. Tak więc jedynym sposobem sprawdzenia bezstratności jest porównanie z oryginałem.

0

Możesz użyć ffmpeg do tego celu. Pobierz go stąd: https://ffmpeg.org/. Po zainstalowaniu oprogramowania i dodaje swój folder źródłowy WIN ścieżkę, wystarczy wykonać następujące czynności:

ffprobe Test.mj2 

Wyjście następnie pokazuje wiele szczegółów na temat filmu, w tym jego ewentualnej losslessness.

patrz poniższy Przykâadowa

[1]