Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемГерасим Чечегов
1 Компьютерная обработка изображений Лекция 6 СПбГУ ИТМО 2003
2 Окрестности каузальная окрестность некаузальная окрестность полукаузальная окрестность
3 Действие функции iplBlur void iplBlur(IplImage* srcImage, IplImage* dstImage, int nCols, int nRows, int anchorX, int anchorY); 3 x 3 5 x 5
4 Масочная фильтрация IplConvKernel* iplCreateConvKernel(int nCols, int nRows, int anchorX, int anchorY, int* values, int nShiftR); - создание ядра свертки void iplGetConvKernel(IplConvKernel* kernel, int* nCols, int* nRows, int* anchorX, int* anchorY, int** values, int* nShiftR); - получение ядра свертки void iplConvolve2D(IplImage* srcImage, IplImage* dstImage, IplConvKernel** kernel, int nKernels, int combineMethod); - выполнение свертки void iplDeleteConvKernel(IplConvKernel* kernel); - удаление ядра свертки
5 Масочная фильтрация void iplConvolve2D(IplImage* srcImage, IplImage* dstImage, IplConvKernel** kernel, int nKernels, int combineMethod); - выполнение свертки IPL_SUM // результат сверток суммируется IPL_SUMSQ // суммируются квадраты результатов IPL_SUMSQROOT // суммируются квадраты результатов, а затем вычисляется корень квадратный IPL_MAX // Выбирается максимальный результат IPL_MIN // Выбирается минимальный результат
6 Масочная фильтрация void MaskFiltering(IplImage* img) { // Скопировать исходное изображение во временное IplImage* tmp = iplCloneImage (img); // Подготовить массив ядра свертки int one[9] = {1,-1,1,-1,1,-1,1,-1,1}; // Создать ядро свертки IplConvKernel* kernel=iplCreateConvKernel(3, 3, 1, 1, one, 0); // Выполнить свертку iplConvolve2D(img, tmp, &kernel, 1, IPL_SUM); // Удалить ядро свертки iplDeleteConvKernel(kernel); // Освободить память исходного изображения iplDeallocate(img, IPL_IMAGE_ALL ); // Скопировать результат в исходное изображение img=iplCloneImage(tmp); // Освободить память временного изображения iplDeallocate( tmp, IPL_IMAGE_ALL ); }
7 Масочная фильтрация
8 Масочная фильтрация int iplFixedFilter(IplImage* srcImage, IplImage* dstImage, IplFilter filter); - выполнение фильтрации IPL_PREWITT_3x3_V // градиентный фильтр Превитта (вертикальный) IPL_PREWITT_3x3_H // градиентный фильтр Превитта (вертикальный) IPL_SOBEL_3x3_V // градиентный фильтр Собеля (вертикальный) IPL_SOBEL_3x3_H // градиентный фильтр Собеля (вертикальный) IPL_LAPLACIAN_3x3 // фильтр высоких частот Лапласа (3X3) IPL_LAPLACIAN_5x5 // фильтр высоких частот Лапласа (5X5) IPL_GAUSSIAN_3x3 // фильтр низких частот Гаусса (3X3) IPL_GAUSSIAN_5x5 // фильтр низких частот Гаусса (5X5) IPL_HIPASS_3x3 // фильтр высоких частот (3X3) IPL_HIPASS_5x5 // фильтр высоких частот (5X5) IPL_SHARPEN_3x3 // фильтр повышения резкости
9 Градиентный фильтр Превитта IPL_PREWITT_3x3_V =
10 Градиентный фильтр Превитта IPL_PREWITT_3x3_H =
11 Градиентный фильтр Собеля IPL_SOBEL_3x3_V =
12 Градиентный фильтр Собеля IPL_SOBEL_3x3_H =
13 Фильтр высоких частот Лапласа IPL_LAPLACIAN_3x3 = IPL_HIPASS_3x3=
14 Фильтр высоких частот Лапласа IPL_LAPLACIAN_5x5 =
15 Фильтр высоких частот IPL_HIPASS_5x5 = 24
16 Фильтр низких частот Гаусса IPL_GAUSSIAN_3x3 =
17 Фильтр низких частот Гаусса IPL_ GAUSSIAN_5x5 =
18 Фильтр повышения резкости IPL_SHARPEN_3x3 =
19 Действие функции iplMedianFilter void iplMedianFilter(IplImage* srcImage, IplImage* dstImage, int nCols, int nRows, int anchorX, int anchorY); 3 x 3 5 x 5
20 Действие функции iplMaxFilter void iplMaxFilter(IplImage* srcImage, IplImage* dstImage, int nCols, int nRows, int anchorX, int anchorY); 3 x 3 5 x 5
21 Действие функции iplMinFilter void iplMinFilter(IplImage* srcImage, IplImage* dstImage, int nCols, int nRows, int anchorX, int anchorY); 3 x 3 5 x 5
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.