undistortFisheyeImage

Корректировка fisheye изображения для искажения линзы

Описание

пример

J = undistortFisheyeImage(I,intrinsics) удаляет искажение объектива для изображения I и возвращает результат как изображение J.

[J,camIntrinsics] = undistortFisheyeImage(I,intrinsics) также возвращает cameraIntrinsics объект, который соответствует виртуальной перспективной камере, которая производит, отображает J.

[___] = undistortFisheyeImage(___,interp) задает метод интерполяции, interp, использование предыдущих синтаксисов.

пример

[___] = undistortFisheyeImage(___,Name,Value) задает один или несколько Name,Value парные аргументы. Незаданные свойства имеют свои значения по умолчанию.

Примеры

свернуть все

Удалите искажение объектива из изображения подозрительного взгляда путем обнаружения checkboard калибровочного шаблона и калибровки камеры. Затем отобразите результаты.

Соберите набор калибровочных изображений шахматной доски.

images = imageDatastore(fullfile(toolboxdir('vision'),'visiondata', ...
    'calibration','gopro'));

Обнаружьте калибровочный шаблон от изображений.

[imagePoints,boardSize] = detectCheckerboardPoints(images.Files);

Сгенерируйте мировые координаты для углов квадратов шахматной доски.

squareSize = 29; % millimeters
worldPoints = generateCheckerboardPoints(boardSize,squareSize);

Оцените калибровочные параметры fisheye-камеры на основе изображения и мировых точек. Используйте первое изображение, чтобы получить размер изображения.

I = readimage(images,1); 
imageSize = [size(I,1) size(I,2)];
params = estimateFisheyeParameters(imagePoints,worldPoints,imageSize);

Удалите искажение объектива из первого изображения I и отобразите результаты.

J1 = undistortFisheyeImage(I,params.Intrinsics);
figure
imshowpair(I,J1,'montage')
title('Original Image (left) vs. Corrected Image (right)')

J2 = undistortFisheyeImage(I,params.Intrinsics,'OutputView','full');
figure
imshow(J2)
title('Full Output View')

Входные параметры

свернуть все

Введите изображение, заданное как M-by-N-by-3 истинный цвет или M-by-N 2D полутоновое изображение. Входное изображение должно быть действительным и неразреженным.

Типы данных: single | double | int16 | uint8 | uint16 | logical

Параметры камеры внутреннего параметра подозрительного взгляда, заданные как fisheyeIntrinsics объект.

Метод интерполяции использовать на входном изображении, заданном как 'bilinear'самый близкий , или 'cubic'.

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'ScaleFactor',2 устанавливает масштабный коэффициент увеличивать увеличение поля зрения камеры.

Размер выходного изображения, заданного как любой 'same'полный, или 'valid'.

Масштабный коэффициент для фокусного расстояния виртуальной перспективы камеры, в пикселях, заданных как скаляр или [sx sy] вектор. Задайте вектор, чтобы масштабировать x и оси y индивидуально. Увеличьте шкалу, чтобы увеличить масштаб перспектива поля зрения камеры.

Значения заливки выходного пикселя, заданные как разделенная запятой пара, состоящая из 'FillValues'и скалярный или вектор с 3 элементами. Когда соответствующее преобразованное в инверсию местоположение во входном изображении находится полностью вне входных границ изображения, вы используете значения заливки в выходных пикселях. Когда вы используете 2D полутоновое входное изображение, FillValues должен быть скаляр. Когда вы используете изображение истинного цвета, FillValues может быть скаляр или вектор с 3 элементами значений RGB.

Выходные аргументы

свернуть все

Неискаженное изображение, возвращенное как M-by-N-by-3 истинный цвет или M-by-N 2D полутоновое изображение.

Типы данных: single | double | int16 | uint8 | uint16 | logical

Неискаженные внутренние параметры виртуальной камеры, возвращенной как cameraIntrinsics объект. Эти внутренние параметры для камеры, которая имеет перспективу, которая производит неискаженное изображение.

Введенный в R2017b