Если вы имеете камеру пишущую на: карту памяти, жесткий диск, DVD или Blu-Ray диск, то проблем со сбросом видео у вас не возникнет. Но как же качественно сбросить видео если у вас цифровая камера пишущая на MiniDV кассеты? Именно из-за этого вопроса многие отказываются от широких возможностей MiniDV камер. Многие люди этого не знают и это вовсе не стыдно, есть пара моих знакомых, которые, как я уже писал смотрят свое видео только непосредственно с камеры на телевизоре, они просто не знали как его сбросить. Итак, давайте разбираться.
//Технологический блог на русском языке, освещающий технологии NN-VIDEOLAB.net и связанные с ними вопросы.
среда, 17 октября 2012 г.
среда, 3 октября 2012 г.
Нормировка изображений в OpenCV и awpipl2
OpenCV
Норма изображения ||Image|| OpenCV вычисляется с использованием функции cvNorm().
Прототип функции:
double cvNorm(const CvArr* arr1, const CvArr* arr2, int normType = CV_L2, const CvArr* mask)
arr1 - первое исходное изображение.
arr2 - второе исходное изображение.
normType - тип вычисляемой нормы.
mask - маска, по которой вычисляется норма изображений.
Если arr2 или arr2 = NULL, то вычисляется абсолютная норма первого или второго и изображения, в противном случае вычисляется абсолютная норма разности изображения, либо относительная норма разности изображений.
Типы вычисляемых норм.
normType может принимать следующие значения:
В случае, если одно из изображений NULL
CV_C normC = ||arr|| = max(|arr(i)|)
CV_L1 normL1 = ||arr|| = Sum(|arr(i)|)
CV_L2 normL2 = ||arr|| = Sqrt(Sum(arr(i)*arr(i)))
В случае, если оба изображения не равны NULL
CV_C normC = ||arr|| = max(|arr1(i)-arr2(i)|)
CV_L1 normL1 = ||arr|| = Sum(|arr1(i)-arr2(i)|)
CV_L2 normL2 = ||arr|| = Sqrt(Sum((arr1(i) - arr2(i))*(arr1(i) - arr2(i))))
В случае, если normType & CV_RELATIVE != 0
CV_C normC = ||arr|| = max(|arr1(i)-arr2(i)|) / max(|arr2(i)|)
CV_L1 normL1 = ||arr|| = Sum(|arr1(i)-arr2(i)|) / Sum(|arr2(i)|)
CV_L2 normL2 = ||arr|| = Sqrt(Sum((arr1(i) - arr2(i))*(arr1(i) - arr2(i)))/ Sqrt(arr2(i)*arr2(i)))
Функция возвращает вычисленную норму. Много-канальное изображение рассматривается как одно-канальное и возвращается норма комбинации каналов.
awpipl2
Нормировка изображений в awpipl2 выполняется с помощью функции awpNormImage. Вычисление нормы изображение выполняется с помощью функции awpGetNorm.
Прототипы функций:
AWPRESULT awpGetNorm(const awpImage* src, const awpImage* mask, awpImage** result, int normType);
Параметры функции:
src - исходное изображение, для которого требуется вычислить норму.
mask - изображение маски, которое может быть использовано для вычисления нормы
result - результирующее изображение, содержащее значения нормы.
normType - типы вычисляемой нормы
Комментарии:
awpGetNorm вычисляет норму изображения src, c учетом маски mask и сохраняет результат в изображение result. Размерности маски mask должны в точности соответствовать размерностям исходного изображения src, число каналов в должно быть равно 1, типа данных должен быть AWP_BYTE. Для вычисления нормы используются только те пиксели маски, значения которых не равны нулю. Если значение переменной mask равно NULL, то вычисляется норма всего изображения src. Формат результирующего изображения result - AWP_DOUBLE, его высота равна 1, ширина соответствует числу каналов изображения src, число каналов равно 1, значения нормы для каждого канала лежат в соответствующих пикселях изображения result. Если изображение result равно NULL, то функция awpGetNorm создает подходящее изображение, в противном случае использует изображение пользователя. Если формат или размерности изображения result, переданные пользователем в функцию awpGetNorm не соответствуют требованиям, описанным выше, то функция возвращает статус AWP_BADARG.
Типы вычисляемой нормы:
Параметр normType может принимать два значения
AWP_NORM_L1, normL1 = ||src|| = Sum(|src(i)|)
AWP_NORM_L2, normL2 = ||src|| = Sqrt(src(i)*src(i))
AWPRESULT awpNormImage(const awpImage* src, awpImage** result, int normType);
Параметры функции:
src - исходное изображение, для которого требуется выполнить нормировку.
result - результирующее нормированное изображение
normType - типы используемой нормировки
Комментарий:
awpNormImage выполняет нормировку normType изображения src и записывает результат в изображение result. Изображение result имеет тип AWP_DOUBLE, его размерности и число каналов соответствуют изображению src. В случае, если изображения result равно NULL, то функция awpNormImage создает подходящее изображение, в противном случае используется изображение пользователя. Если формат или размерности изображения result, переданные пользователем в функцию awpNormImage не соответствуют требованиям, описанным выше, то функция возвращает статус AWP_BADARG.
Типы используемой нормировки:
AWP_NORM_L1, result(i) = src(i) / ||src|| = src(i) / Sum(|src(i)|)
AWP_NORM_L2, result(i) = src(i) / ||src|| = src(i) / Sqrt(Sum(src(i)*src(i)))
В случае, если ||src|| равна 0, то функция awpNormImage возвращает статус AWP_EMPTY_IMAGE
Норма изображения ||Image|| OpenCV вычисляется с использованием функции cvNorm().
Прототип функции:
double cvNorm(const CvArr* arr1, const CvArr* arr2, int normType = CV_L2, const CvArr* mask)
arr1 - первое исходное изображение.
arr2 - второе исходное изображение.
normType - тип вычисляемой нормы.
mask - маска, по которой вычисляется норма изображений.
Если arr2 или arr2 = NULL, то вычисляется абсолютная норма первого или второго и изображения, в противном случае вычисляется абсолютная норма разности изображения, либо относительная норма разности изображений.
Типы вычисляемых норм.
normType может принимать следующие значения:
В случае, если одно из изображений NULL
CV_C normC = ||arr|| = max(|arr(i)|)
CV_L1 normL1 = ||arr|| = Sum(|arr(i)|)
CV_L2 normL2 = ||arr|| = Sqrt(Sum(arr(i)*arr(i)))
В случае, если оба изображения не равны NULL
CV_C normC = ||arr|| = max(|arr1(i)-arr2(i)|)
CV_L1 normL1 = ||arr|| = Sum(|arr1(i)-arr2(i)|)
CV_L2 normL2 = ||arr|| = Sqrt(Sum((arr1(i) - arr2(i))*(arr1(i) - arr2(i))))
В случае, если normType & CV_RELATIVE != 0
CV_C normC = ||arr|| = max(|arr1(i)-arr2(i)|) / max(|arr2(i)|)
CV_L1 normL1 = ||arr|| = Sum(|arr1(i)-arr2(i)|) / Sum(|arr2(i)|)
CV_L2 normL2 = ||arr|| = Sqrt(Sum((arr1(i) - arr2(i))*(arr1(i) - arr2(i)))/ Sqrt(arr2(i)*arr2(i)))
Функция возвращает вычисленную норму. Много-канальное изображение рассматривается как одно-канальное и возвращается норма комбинации каналов.
awpipl2
Нормировка изображений в awpipl2 выполняется с помощью функции awpNormImage. Вычисление нормы изображение выполняется с помощью функции awpGetNorm.
Прототипы функций:
AWPRESULT awpGetNorm(const awpImage* src, const awpImage* mask, awpImage** result, int normType);
Параметры функции:
src - исходное изображение, для которого требуется вычислить норму.
mask - изображение маски, которое может быть использовано для вычисления нормы
result - результирующее изображение, содержащее значения нормы.
normType - типы вычисляемой нормы
Комментарии:
awpGetNorm вычисляет норму изображения src, c учетом маски mask и сохраняет результат в изображение result. Размерности маски mask должны в точности соответствовать размерностям исходного изображения src, число каналов в должно быть равно 1, типа данных должен быть AWP_BYTE. Для вычисления нормы используются только те пиксели маски, значения которых не равны нулю. Если значение переменной mask равно NULL, то вычисляется норма всего изображения src. Формат результирующего изображения result - AWP_DOUBLE, его высота равна 1, ширина соответствует числу каналов изображения src, число каналов равно 1, значения нормы для каждого канала лежат в соответствующих пикселях изображения result. Если изображение result равно NULL, то функция awpGetNorm создает подходящее изображение, в противном случае использует изображение пользователя. Если формат или размерности изображения result, переданные пользователем в функцию awpGetNorm не соответствуют требованиям, описанным выше, то функция возвращает статус AWP_BADARG.
Типы вычисляемой нормы:
Параметр normType может принимать два значения
AWP_NORM_L1, normL1 = ||src|| = Sum(|src(i)|)
AWP_NORM_L2, normL2 = ||src|| = Sqrt(src(i)*src(i))
AWPRESULT awpNormImage(const awpImage* src, awpImage** result, int normType);
Параметры функции:
src - исходное изображение, для которого требуется выполнить нормировку.
result - результирующее нормированное изображение
normType - типы используемой нормировки
Комментарий:
awpNormImage выполняет нормировку normType изображения src и записывает результат в изображение result. Изображение result имеет тип AWP_DOUBLE, его размерности и число каналов соответствуют изображению src. В случае, если изображения result равно NULL, то функция awpNormImage создает подходящее изображение, в противном случае используется изображение пользователя. Если формат или размерности изображения result, переданные пользователем в функцию awpNormImage не соответствуют требованиям, описанным выше, то функция возвращает статус AWP_BADARG.
Типы используемой нормировки:
AWP_NORM_L1, result(i) = src(i) / ||src|| = src(i) / Sum(|src(i)|)
AWP_NORM_L2, result(i) = src(i) / ||src|| = src(i) / Sqrt(Sum(src(i)*src(i)))
В случае, если ||src|| равна 0, то функция awpNormImage возвращает статус AWP_EMPTY_IMAGE
Подписаться на:
Сообщения (Atom)