Python
 Computer >> コンピューター >  >> プログラミング >> Python

OpenCVを使用した画像の輪郭の検出


このプログラムでは、画像の輪郭を検出します。等高線は、同じ色または強度を持つすべての連続点を結ぶ曲線として簡単に説明できます。輪郭は、形状分析およびオブジェクトの検出と認識に役立つツールです。

元の画像 OpenCVを使用した画像の輪郭の検出

アルゴリズム

Step 1: Import OpenCV.
Step 2: Import matplotlib.
Step 3: Read the image.
Step 4: Convert the image from bgr2rgb.
Step 5: Convert the rgb image to grayscale.
Step 4: Perform thresholding on the image.
Step 5: Find contours on the image.
Step 6: Draw contours on the image.
Step 7: Display the output.

サンプルコード

import cv2
import matplotlib.pyplot as plt

image = cv2.imread('testimage.jpg')
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
gray = cv2.cvtColor(image, cv2.COLOR_RGB2GRAY)
ret, binary = cv2.threshold(gray, 127,255, cv2.THRESH_BINARY_INV)
contours, hierarchy = cv2.findContours(binary, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)

image = cv2.drawContours(image, contours, -1, (0,255,0), 2)
plt.imshow(image)
plt.show()

出力

OpenCVを使用した画像の輪郭の検出


  1. Pythonを使用した畳み込み?

    画像認識は、線形回帰や類似性の比較など、はるかに単純な方法を使用して行われていました。手書きのアルファベットを認識するという単純な作業でさえ、結果は明らかにあまり良くありませんでした。畳み込みニューラルネットワーク(CNN)は、画像を知覚するときに人間の脳の神経活動を大まかにシミュレートする計算上安価な方法を提供することにより、従来の方法から一歩進んだものになるはずです。 畳み込みニューラルネットワークの概要 さまざまなオブジェクトを認識する方法と非常によく似ていますが、コンピュータアルゴリズムは、入力を一般化し、これまでに見たことのない画像を判断する前に、何百万もの画像を調べる必要が

  2. PythonOpenCvモジュールを使用したヒストグラムの等化

    これは、画像のヒストグラムを使用してコントラスト調整を行う画像処理の方法です。 実際、この方法は通常、多くの画像のグローバルコントラストを増加させます。特に、画像の使用可能なデータが近いコントラスト値で表される場合、この調整により、強度をヒストグラム上でより適切に分散でき、ローカルコントラストの低い領域が可能になります。より高いコントラストを得る。 OpenCVにはこれを行う関数cv2.equalizeHist()があり、その入力は単なるグレースケール画像であり、出力はヒストグラム均等化された画像です。 この手法は、画像のヒストグラムが特定の領域に限定されている場合に適しています。強度の