Почему некоторые файлы JPEG той же сцены намного больше, чем другие?


12

Я использую ip-камеру Foscam FI8910W для просмотра статичной сцены при постоянном освещении. Когда я возвращаю захват кадра, его размер составляет около 35 КБ. Я могу делать это снова и снова, и это всегда около 35 КБ, но несколько колеблется из-за различных шумов, присущих электронному захвату изображения. Это случайное отклонение составляет не более 1 КБ.

Примерно через каждые 2500 кадров размер изображения кадра внезапно становится порядка 70 КБ. Нет постепенного ползания вверх, если вы думаете о тепловом шуме, когда камера нагревается. 1 кадр будет иметь размер 70 КБ, затем они возвращаются к кадрам размером 35 КБ.

Это случилось раньше с другим пробегом, смотрящим на другую сцену. Общий размер файла тогда составлял 39 КБ, а из 10000 кадров 4 были порядка 77 КБ. Гистограмма размера изображения выглядела так:

Гистограмма размера JPEG

Прежде чем вы спросите, мне удалось сохранить один из этих кадров, и он выглядит точно так же, как и все остальные, за исключением ожидаемых колебаний шума. У них примерно одинаковое количество уникальных цветов - около 23 000. Так что это не мотылек, который случайно приземляется на объектив ровно на 1 кадр, а затем улетает. Для полноты я сделал еще один прогон изображений, и это пример типичного изображения (отражение - ИК-осветитель): -

37K типичное изображение

Это изображение аномалии : -

Изображение аномалии 73K

Вы можете видеть, что нет никакой разницы. Извините за бегемота. Я довольно хорошо знаком с алгоритмом JPEG и не вижу, как это может произойти, кроме ошибки кодирования в реализации Foscam. Но может ли быть что-то хаотичное в некоторых функциях преобразования JPEG (например, дискретное косинусное преобразование или квантование)? Статистически, можно ожидать нормального распределения размера файла, и это то, что я вижу около 39 КБ. Тогда есть несколько выбросов в 77 КБ. Так что это не кажется стохастическим.

Причина в том, что это в CS, а не в аппаратном обеспечении, я спрашиваю, может ли это быть явлением программного кода, относящимся к алгоритму кодирования JPEG? Кажется маловероятным, но аномалии случайны и нечасты, и человек не взаимодействует с устройством. Стабильна ли кодировка JPEG?

Причина, по которой вы можете быть незнакомы с этим явлением, заключается в том, что, поскольку изображения выглядят одинаково, никто не смотрит на размеры файлов. Размер файла имеет решающее значение для меня, поэтому я заметил. Как это может происходить примерно каждые 2500 кадров?

Справочная: -

Публикация этих изображений не сработает, ребята, так как imgur переопределяет загруженные файлы. Так что, хотя я разместил файлы 37K и 73K, imgur повторно сэмплировал оба к 35K. Похоже, это проблема Stack Exchange, которая кажется ироничной для сайта, занимающегося обработкой изображений, сжатием и анализом данных.

Это моя обработка изображений. Это нормализованная разница между нормальным изображением и аномалией. Изображение, как и следовало ожидать, с шумом JPEG в высокочастотных областях. Это изображение RGB, хотя оно выглядит монохромным. В цветовом кубе 8000 уникальных цветов (представляющих шум).

Нормализованная разница между 37K и 73K изображениями

Дополнение 2: -

По запросу могут быть загружены 4 обычных кадра и 2 ненормальных кадра из примеров кадров . Это другая сцена, но аномальное поведение все же имело место, так что это доказывает, что оно соответствует.


Вы смотрели на поля EXIF ​​/ ICMP больших изображений? Возможно камера хранит некоторую дополнительную информацию там.
MBaz

Оба первых двух включенных изображения примерно одинакового размера: около 36К. Почему вы говорите, что они 70К? Возможно, сайт загрузки изображений перекодирует их?
Питер К.


1
Мой старый Nikon позволяет мне получить как JPEG, так и необработанный образ. Я хотел бы попытаться захватить грубое аномальное изображение.

Вау, этот вопрос был задан год назад и до сих пор не получил ответа. ОП понял это?
Ракшит Котари

Ответы:


1

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

Например, если фокус перемещается от гладкого объекта к текстурированному объекту (например, от гладкого бегемота к тканевой драпировке) таким образом, что поверхность детализации текстуры последнего, JPEG будет иметь тенденцию принимать гораздо больший размер.

Как уже сказал кто-то еще: неплохо было бы проверить данные EXIF ​​изображения на предмет изменений основных параметров, таких как диафрагма и расстояние фокусировки. Для такой поразительной разницы в размере изображения, вполне вероятно, что какой-то фундаментальный параметр отличается по мнению камеры.


0

Для сенсоров CMOS характерно сталкиваться с явлением, известным как «ФИОЛЕТОВАЯ КОЛЬЦА» или возможными проблемами «цветения сенсора», которые я объясню более подробно через секунду.

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

Я полагаю, что перегрузка происходит в пурпурном (или фиолетовом) диапазоне, и это явление довольно редкое.

Думайте о датчике как о огромном подносе с кубиками льда ... выложенном в виде сетки, как мода. Если один отсек переполняется водой (светом) из-за аномалии .... он может перетекать в соседние отсеки и т. Д., Вызывая партию кубиков льда немного большего объема для этой партии. (Возможно, объясняя больший размер файла ... И данные о цвете)

Теперь это лучшее предположение, и я нашел ссылку, которая может оказаться вам полезной, с дополнительной информацией по вышеупомянутому вопросу - КАК ХОРОШО, так как есть дополнительная техническая информация, которая может помочь изолировать проблему для вас, если моя оценка неверна.

Проверьте эту ссылку http://toothwalker.org/optics/chromatic.html

Помните, что RGB - это вычитаемое цветовое пространство. Цвет через свет (против пигментов) управляется путем удаления света на определенных длинах волн. Некоторые цветовые волны длиннее других.

На странице есть отличный урок по оптике, который также может помочь объяснить аномалию.


2
-1 Не думаю, что это ответ на проблему. Почему в одном кадре может появиться сенсор? Файл различий не показывает это или фиолетовую окантовку. Также это не увеличит размер файла в 2 раза.
Олли Нимитало

Кроме того, RGB - аддитивное цветовое пространство, а CMYK - субтрактивное. В RGB «фиолетовый» - это R + B
MSalters
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.