Во-первых, если вы используете movie2avi
, у вас ограниченный набор очень слабых кодеков (форматов сжатия). Если у вас есть достаточно новая версия Matlab (R2009b +, я думаю), вы должны использовать класс VideoWriter
. Выбор кодеков по-прежнему не очень хорош, но они имеют гораздо лучшее качество. Вы не указали, какой кодек (или ОС) вы используете, поэтому я не могу рекомендовать альтернативу.
Во-вторых, даже в идеальных условиях вы должны ожидать, что ваш файл фильма станет больше с тем, что вы делаете, если не применить дополнительное сжатие. Добавление стеганографического контента связано с добавлением шума, поэтому вы усложняете сжатие данных. В movie2avi
и VideoWriter
вы можете отрегулировать уровень сжатия или качество в зависимости от кодека. Кроме того, по умолчанию кодек movie2avi
под Linux и OS X не использует сжатие, поэтому файл будет огромным, если вы его не изменили.
Если VideoWriter
не соответствует вашим потребностям (или если ваша версия его не имеет), вы можете попробовать мой класс QTWriter
на GitHub, который позволяет экспортировать фильмы QuickTime в Matlab. Он очень похож на VideoWriter
, но позволяет создавать высококачественные фильмы QuickTime с использованием нескольких кодеков на основе изображений. Не используется межкадровое сжатие, а форматы PNG и TIFF без потерь (это может быть важно для вашего стеганографического приложения), будучи очень эффективным при кодировании контента, который часто генерируется в Matlab. Также есть формат JPEG, который лучше подходит для общих изображений. Затем файлы QuickTime могут быть преобразованы в другие форматы. Вы можете read more and see examples here и скачать single M-file here.
Стеганографическое содержание, скорее всего, будет стерто любой схемой сжатия с потерями. Это то, что вы действительно хотите делать? – John
@John: OP не указывает, какой кодек используется. 'movie2avi' включает опцию' 'None''. И это зависит от того, что такое стеганографический контент. Я представляю, что есть методы, которые работают со сжатым видео без манипуляции с самим кодеком. – horchler
@horchler Поскольку OP беспокоился о размере видео, я предположил, что он не использовал «None», но ваш момент является самым прекрасным. – John