Рубрики
Без рубрики

Как обнаружить края на изображении, используя OpenCV в Python

Что такое обнаружение краев? Обнаружение края – это методика обработки изображений для поиска … Теги с Python, машинным обучением, наукой данных, учебником.

Что такое обнаружение краев?

Обнаружение краев – это методика обработки изображений для поиска границ объектов в изображениях. Он работает, обнаруживая разрывы в яркости.

где используется обнаружение края?

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

Требования

Есть несколько алгоритмов обнаружения краев и разные библиотеки, поддерживающие его Но в этом руководстве я собираюсь показать вам, как это сделать, используя Opencv используя канатный алгоритм.

Установка

Установка в окне

Для окна просто используйте нормальные PIP, чтобы установить зависимости, как показано ниже;

pip install opencv-python

pip install matplotlib

Установка на Linux.

Для Linux вам может потребоваться использовать PIP3, чтобы указать, что вы устанавливаете зависимости на Python3.

pip3 install opencv-python

pip3 install matplotlib

Давай началось

Как только мы установили сейчас, мы готовы пойти к обнаружению краев с помощью Python, используя Каннические алгоритмы Отказ

Мы собираемся использовать метод OpenCV Imread () Чтобы загрузить изображение из файла, используйте Canny () * Чтобы обнаружить края, а затем, наконец, визуализируя изображения перед обнаружением и после использования Матплотлиб *

Чтение изображений с opencv

Чтобы прочитать изображение из файла, используя Imread () Метод необходимо предоставить два параметра, один для пути к нашему необработанному изображению, и следующий – это режим чтения, который может либо серым, RGB, HSV, HSL и т. Д.

SPENCV синтаксис для чтения изображения

import cv2​

image = cv2.imread(path_to_image, mode_of_reading)

Каннические алгоритмы Обычно хорошо работают, когда изображение находится в оттенках серого, есть ярлык в OpenCV, чтобы открыть изображение в режиме серого, который выполняется путем размещения 0 в режим чтения.

Используя канатные алгоритмы для обнаружения краев

Обнаруживать края с Каннина Вы должны указать свое изображение необработанного изображения, нижний порог пикселя и более высокий порог пикселя в порядке, показанном ниже;

image_with_edges = cv2.Canny(raw_image, l_threshold, h_theshold)

Как порог влияет на обнаружение краев?

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

Завершающий наш код и визуализируя его с MatPlotlib

Теперь, когда мы узнали основы OpenCV вместе с алгоритмами Canny Drection, теперь давайте поставим их вместе, чтобы попробовать приложение Real-World

Давайте обнаружим края на изображении образец ниже Road.jpg.

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

import cv2
import matplotlib.pyplot as plt 

def detect_edge(image):
    ''' function Detecting Edges '''

    image_with_edges = cv2.Canny(image , 100, 200)

    images = [image , image_with_edges]

    location = [121, 122]

    for loc, img in zip(location, images):
        plt.subplot(loc)
        plt.imshow(img, cmap='gray')

    plt.savefig('edge.png')
    plt.show()

image = cv2.imread('road.jpg', 0)
detect_edge(image)

Выход

После выполнения он сделает изображение с краями, как показано на рисунке ниже;

🎉🎉. 🎉 Поздравляем, вы только что узнали, как обнаружить края в Python, вы должны гордиться собой, Чирикать сейчас Поделиться этими хорошими новостями с вашими собратьями.

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

Калебу/краевое обнаружение

Сценарий Python для обнаружения изображения на основе канальных алгоритмов

Руководство по выполнению выявления края в Python с использованием встроенных алгоритмов APENCV Canny ()

Оригинал: “https://dev.to/kalebu/how-to-detect-edges-in-an-image-using-opencv-in-python-12cm”