none
Как сжать BitMap RRS feed

  • Вопрос

  • Привет всем!

    Есть проблема, с которой уже долгое время не могу разобраться. Я захватываю кадры с веб-камеры, как можно сравнить новый кадр с предыдущим, и как-нибудь скопировать с нового кадра только те пиксели, которые были изменены и наложить на старый, что избавит от использования целого кадра.

     

    Спасибо!

    P.s. Как проверить на изменение пиксели я знаю, а вот как достать их и наложить не могу.
    21 февраля 2011 г. 19:13

Ответы

  • В таком случае, могу посоветовать не мудрить а использовать стандартные методы сжатия потокового видео (всякие там mpeg  или ASF). Реализацию можно сделать через DirectShow.

    Либо, другой вариант - передавать ваши кадры целиком, но сжимать их обычным GZIP-ом. Видео кадры обычно хорошо сжимаются, особенно если их немного обработать (blur, усреднение между кадрами и все такое).

    • Помечено в качестве ответа Abolmasov Dmitry 12 марта 2011 г. 11:09
    23 февраля 2011 г. 21:48

Все ответы

  • Так для сравнения кадров тоже нужно время, и тоже нужно обработать весь битмап. Так стоит ли игра свеч?

    22 февраля 2011 г. 7:37
  • с unsafe все незаметно быстро
    22 февраля 2011 г. 12:48
  • И в чем тогда проблема? Или может вам видео по сети нужно передавать, и для этого вы сжимаете?

    23 февраля 2011 г. 6:30
  • да, будет передача по сети. Сейчас кадр 39 килобайт, что очень много, так как в секунду будет передаваться как минимум 10-15.
    23 февраля 2011 г. 14:04
  • В таком случае, могу посоветовать не мудрить а использовать стандартные методы сжатия потокового видео (всякие там mpeg  или ASF). Реализацию можно сделать через DirectShow.

    Либо, другой вариант - передавать ваши кадры целиком, но сжимать их обычным GZIP-ом. Видео кадры обычно хорошо сжимаются, особенно если их немного обработать (blur, усреднение между кадрами и все такое).

    • Помечено в качестве ответа Abolmasov Dmitry 12 марта 2011 г. 11:09
    23 февраля 2011 г. 21:48
  • я уже пробовал использовать DirectShow, но я использую C# и практически никакой документации о нетовской дллке нету, есть примеры, но я не догоняю как сжимать видео(не знаю directshow вообще) и направлять его на сокет. Вилео у меня получалось очень большое
    24 февраля 2011 г. 13:56
  • Скачайте примеры к библиотеке DirectShow .NET, посмотрите пример DxPropPages – Show how to add compression filters to video capture, and show how to invoke the property pages for capture devices, and video compressors.


    Для связи [mail]
    1 марта 2011 г. 14:13