Обнаружение краев цвета + OpenCV - PullRequest
3 голосов
/ 11 ноября 2011

В детекторе Canny Edge требуется ввод серого изображения ...

Есть ли в open-cv функция прямого детектора краев цвета? Или это то же самое, если я перевожу в оттенки серого и использую canny?

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

Может ли кто-нибудь помочь мне, как я должен прогрессировать ...

1 Ответ

5 голосов
/ 11 ноября 2011

Матиас Одисио прав, спасибо, что вы даже поправили меня, и вы очень хорошо объяснили причину. Тогда решение будет заключаться в том, чтобы выполнить обнаружение краев для каждого цветового спектра:

 Image<Bgr, Byte> img  = new Image<Bgr, Byte>(open.FileName);
 Image<Bgr, Byte> Result = new Image<Bgr, Byte>(img.Size);
 Result[0] = img[0].Canny(new Gray(10), new Gray(60));
 Result[1] = img[0].Canny(new Gray(10), new Gray(60));
 Result[2] = img[0].Canny(new Gray(10), new Gray(60));

Надеюсь, это поможет,

Chris

...