画像から抽出した複数の輪郭の各面積を1つのcsvファイルに出力したいです。csvの書き込みイメージは、
A B
1 輪郭番号 面積
2 輪郭番号 面積
…
のような感じです。
printでは上手く輪郭番号と面積は出力されましたが、それをcsvに出力する方法が分かりません。
コードは以下になります。まだ初心者の為、不要なコードも含まれているかもしれませんがご了承下さい。是非ともお力添えををお願い致します。
for分の下が投稿するとタブ空白が消えて左つめになってしまっていますが、areaとprintはタブ空白あります。
import cv2
import numpy as np
from matplotlib import pyplot as plt
import sys
import csv
img = cv2.imread('dot.jpg')
b = cv2.bitwise_not(img)
c=cv2.cvtColor(b,cv2.COLOR_BGR2GRAY)
d=cv2.threshold(c,50,255,cv2.THRESH_BINARY_INV)[1]
e = cv2.bitwise_not(d)
image, contours, hierarchy = cv2.findContours(e,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)
for i, cnt in enumerate(contours):
area = cv2.contourArea(cnt)
print('contour: {}, area: {}'.format(i, area))
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/09 11:13
2019/09/09 12:13
2019/09/09 12:54
2019/09/09 15:13
2019/09/09 23:26