Тестирование класса преобразования изображения / видео - PullRequest
0 голосов
/ 12 июля 2010

У меня есть класс, который конвертирует изображения и видео в другие форматы.Доступен ряд опций, таких как размер, режим масштабирования, цвет фона и т. Д. (Например, команда ImageMagick convert).Есть идеи, как это проверить?Код для реализации всех опций не так сложен для написания, но я не уверен в том, как подтвердить правильность результатов, особенно для видео.

Одна из идей - запустить полученный файл с помощью идентификатора.или mediainfo и посмотрите, что я ожидаю результатов.Это не сработает для изображения правильного размера и т. Д., Но выглядит совершенно неправильно.

Другая идея заключается в том, чтобы вручную подтвердить полученные файлы один раз, сохранить эти файлы и затем сравнить их с вновь преобразованнымифайлы каждый раз при запуске теста.Недостатком этого является необходимость иметь #inputs x #options выходных файлов, которые могут стать большими, особенно с видео.

Это дурацкое поручение или есть разумный способ сделать это?

1 Ответ

1 голос
/ 12 июля 2010

Для изображений вы можете вычислить несколько простых метрик (цветная гистограмма, краевая гистограмма и т. Д.) И убедиться, что они одинаковы (в пределах некоторого допуска) до и после преобразования.

Для видео вы можете сделать то же самое с кадрами, отобранными через некоторый интервал. Конечно, не идеальная гарантия, но на практике все должно работать очень хорошо.

Конечно, вам придется либо выбирать показатели, которые не зависят от видов изменений, произведенных процессом конверсии, либо учитывать ожидаемые изменения в функции сравнения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...