lineToBorderPoints

Точки пересечения строк в цвете границы изображения и цвете границы изображения

Синтаксис

points = lineToBorderPoints(lines,imageSize)

Описание

пример

points = lineToBorderPoints(lines,imageSize) вычисляет точки пересечения между одной или несколькими строками в изображении с цветом границы изображения.

Примеры

свернуть все

Загрузите и отобразите изображение.

I = imread('rice.png');
figure; 
imshow(I); 
hold on;

Задайте строку с уравнением, 2 * x + y - 300 = 0.

aLine = [2,1,-300];

Вычислите точки пересечения строки и цвета границы изображения.

points = lineToBorderPoints(aLine,size(I))
points = 1×4

  149.7500    0.5000   21.7500  256.5000

line(points([1,3]),points([2,4]));

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

свернуть все

Матрица строки, заданная как M-by-3 матрица, где каждая строка должна быть в формате, [A, B, C]. Эта матрица соответствует определению строки:

A * x + B * y + C = 0.
M представляет количество строк.

lines должен быть double или single.

Размер изображения, заданный как вектор - строка в формате, возвращенном функцией size.

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

свернуть все

Точки пересечения, возвращенные как M-by-4 матрица. Функция возвращает матрицу в формате [x 1, y 1, x 2, y 2]. В этой матрице, [x 1 y 1] и [x 2 y 2] эти две точки пересечения. Когда строка в изображении и цвете границы изображения не пересекается, функция возвращается [-1,-1,-1,-1].

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

| |

Введенный в R2011a