質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

PyCharm

エディター・開発ツール

Q&A

解決済

1回答

1089閲覧

python+openCVで物体検出をしたい

yuya_k

総合スコア1

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

PyCharm

エディター・開発ツール

0グッド

0クリップ

投稿2020/06/26 11:11

前提・実現したいこと

 あるブログで紹介されていたサンプルコードを用いて、物体検出を行いたい
ブログのコードをコピーし実行したら、エラーが出た。

https://techtech-sorae.com/pythonopencv%e3%82%92%e4%bd%bf%e3%81%a3%e3%81%a6%e7%89%a9%e4%bd%93%e6%a4%9c%e5%87%ba%e3%81%a7%e3%82%b3%e3%82%a4%e3%83%b3%e5%b0%8f%e9%8a%ad%ef%bc%89%e3%82%92%e6%a4%9c%e5%87%ba%e3%81%97%e3%81%a6/

発生している問題・エラーメッセージ

 

File "C:〇〇〇〇", line 34 if (aspect_ratio & lt; ASPECT_THRESH): ^ SyntaxError: invalid syntax Process finished with exit code 1

該当のソースコード

import cv2 import math if __name__ == "__main__": # input image img = cv2.imread("coins.jpg") # convert gray scale image gray_img = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY) # gaussian gray_img = cv2.GaussianBlur(gray_img, (7, 7), 0) # ret, bw_img = cv2.threshold(gray_img, 190, 255, cv2.THRESH_BINARY_INV) ret, bw_img = cv2.threshold(gray_img, 0, 255, cv2.THRESH_OTSU) # invert black white (when use cv2.THRESH_OTSU) # bw_img = cv2.bitwise_not(bw_img) cv2.imwrite("black_white.jpg", bw_img) imgEdge, contours, hierarchy = cv2.findContours(bw_img, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) ROUNDNESS_THRESH = 0.5 ASPECT_THRESH = 0.90 COIN_AREA = 100000.0 COIN_AREA_RATIO_THRESH = 0.5 coin_list = [] for contour in contours: # get circumscribed quadrangle x, y, width, height = cv2.boundingRect(contour) # check aspect ratio aspect_ratio = float(width) / float(height) if (aspect_ratio & lt; ASPECT_THRESH): continue # check area area = cv2.contourArea(contour) area_ratio = abs(float(1 - (area / COIN_AREA))) if (area != 0 and area_ratio & gt; COIN_AREA_RATIO_THRESH): continue # detect long axis longAx = width if (width & lt; height): longAx = height # calculate roundness value roundness = (4 * area) / (math.pi * (longAx ** 2)) # it seems like a circle closer to 1.0 if (roundness & gt; ROUNDNESS_THRESH): coin_list.append(roundness) topleft = x cv2.rectangle(img, (x, y), (x + width, y + height), (0, 0, 200), 2) print("number of coins detected : ", len(coin_list)) print("coin average roundness : ", sum(coin_list) / len(coin_list)) cv2.imwrite("coin_result.jpg", img)

試したこと

python自体を初めて日が浅く、とりあえず実行したいが知識がなく解決策がわからない。

補足情報(FW/ツールのバージョンなど)

pycharm/open-CV いずれも数日前に最新版を導入

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

& lt;は <に, & gt;は>に置換すればいいと思います。
https://marycore.jp/prog/css/html-lt-gt/

投稿2020/06/26 12:20

Penpen7

総合スコア698

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yuya_k

2020/06/26 12:40

回答ありがとうございました。 とても助かりました
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問