回答編集履歴
2
書いてしまった
answer
CHANGED
@@ -1,3 +1,42 @@
|
|
1
|
+
**2017-11-15 P.M更新**
|
2
|
+
流用できたので載せてしまいますが、次からちゃんとコードを載せてくださいね。
|
3
|
+
|
4
|
+
---
|
5
|
+
[teratailの先日の投稿の回答](https://teratail.com/questions/100301)のコードを流用します。
|
6
|
+
|イメージ1|イメージ2|
|
7
|
+
|:--|--:|
|
8
|
+
|||
|
9
|
+
|
10
|
+
`original.png`にリネームして走らせてください。
|
11
|
+
|
12
|
+
|
13
|
+
```Python
|
14
|
+
# -*- coding: utf-8 -*-
|
15
|
+
import cv2
|
16
|
+
import numpy as np
|
17
|
+
##########################################
|
18
|
+
img = cv2.imread("original.png")
|
19
|
+
cv2.imshow("ORIGINAL",img)
|
20
|
+
|
21
|
+
b,g,r = cv2.split(img)
|
22
|
+
|
23
|
+
mask =( b > 200) & (g < 200)
|
24
|
+
|
25
|
+
img_masked = cv2.bitwise_and(img,img,mask=mask.astype(np.uint8))
|
26
|
+
|
27
|
+
if mask.any():
|
28
|
+
print("This image has blue color.")
|
29
|
+
else:
|
30
|
+
print("This image does NOT have blue color.")
|
31
|
+
|
32
|
+
cv2.imshow("ORIGINAL-MAKSED",img_masked )
|
33
|
+
|
34
|
+
cv2.waitKey(0)
|
35
|
+
```
|
36
|
+
以下先日の投稿
|
37
|
+
|
38
|
+
---
|
39
|
+
|
1
40
|
コードが乗っていませんのでザクっとしたことを書きます。
|
2
41
|
|
3
42
|
---
|
@@ -16,6 +55,6 @@
|
|
16
55
|
|全体|1pxに縮小+色判定|`cv2.resize`|OpenCV resize python|
|
17
56
|
|場所を指定|くりぬき+色判定|`img[y:y+h,x+w]`|OpenCV crop python|
|
18
57
|
|モノを指定|くりぬき+色判定|`img[y:y+h,x+w]`|OpenCV 物体検出 python|
|
19
|
-
|少しでもあれば|値の検索|`if any(
|
58
|
+
|少しでもあれば|値の検索|`if bool_list.any()`| python any boolean|
|
20
59
|
|
21
60
|
これでいかがでしょうか?
|
1
簡素化
answer
CHANGED
@@ -7,7 +7,6 @@
|
|
7
7
|
- 画像**全体**が○○色なのか
|
8
8
|
- 画像の**左上1/4**が○○色なのか
|
9
9
|
- 画像の中の**コップ**が○○色なのか
|
10
|
-
- 画像の中の**図形**が○○色なのか
|
11
10
|
- 画像の中に**少しでも**○○色があるのか
|
12
11
|
|
13
12
|
これらでだいぶ処理方法が異なってきます。
|