teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

4

2020/01/09 10:04

投稿

退会済みユーザー
answer CHANGED
@@ -3,15 +3,11 @@
3
3
  何か各ブロックを認識できるいい方法はございませんか。
4
4
 
5
5
 
6
- ![処理後](a922c1866cf143464583f395daa445d4.png)
7
- ![処理後](6f0db1c48ae13e15772c57b1c7d0bbf8.png)
8
6
 
9
7
 
10
8
 
11
9
 
12
10
 
13
-
14
-
15
11
  ・インデントについて学び、for文の範囲を考え、下記のプログラムに変更することで一括処理をすることができました。
16
12
 
17
13
  ```python

3

ブロックの認識、for文の変更

2020/01/09 10:04

投稿

退会済みユーザー
answer CHANGED
@@ -1,5 +1,19 @@
1
+ ・ブロックの認識ですが、[OpenCVで切れてしまっている輪郭を抽出したい](https://teratail.com/questions/147683)で挙げられているadaptiveThreshold()のcv2.ADAPTIVE_THRESH_GAUSSIAN_Cで処理を行うと、下の画像のようにいい感じにブロックをハッキリと表すことができました。
2
+ しかし、ブロックの輪郭が繋がっていないため、輪郭抽出することができません。また、ハフ変換により直線検出により、輪郭抽出を行い、面積の大きさによりブロック以外の面積をフィルタしようとしましたが、直線を検知しすぎて上手くいきませんでした。もしかしたら、値の設定など上手くできていなかったのかもしれませんが。。。
1
- インデントについて学び、for文の範囲を考え、下記のプグラムに変更することで一括処理することができました
3
+ 何か各ブック認識できるいい方法はございせんか
2
4
 
5
+
6
+ ![処理後](a922c1866cf143464583f395daa445d4.png)
7
+ ![処理後](6f0db1c48ae13e15772c57b1c7d0bbf8.png)
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+ ・インデントについて学び、for文の範囲を考え、下記のプログラムに変更することで一括処理をすることができました。
16
+
3
17
  ```python
4
18
  for i in range(1,288):
5
19
  img = cv2.imread('images/video/frame_{0:03}.png'.format(i))

2

for文の変更

2019/11/28 20:35

投稿

退会済みユーザー
answer CHANGED
@@ -1,4 +1,4 @@
1
- for文のおいてはこちらに変更しましたがしましたがframe_288.pngブロック検出した画像がframe_001287.png.png~frame_287.png.png名前保存されようになってしましました。
1
+ インデントについて学びfor文範囲考え下記プログラムに変更すること一括処理をすことができました。
2
2
 
3
3
  ```python
4
4
  for i in range(1,288):

1

for文の変更

2019/11/28 16:26

投稿

退会済みユーザー
answer CHANGED
@@ -1,6 +1,11 @@
1
- for文のおいてはこちらで解決できました。
1
+ for文のおいてはこちらに変更しましたがしましたが、frame_288.pngのブロックを検出した画像が、frame_001287.png.png~frame_287.png.pngの名前保存されるようになってしましました。
2
2
 
3
3
  ```python
4
4
  for i in range(1,288):
5
5
  img = cv2.imread('images/video/frame_{0:03}.png'.format(i))
6
+ ```
7
+ ```python
8
+ for i in range(1,288):
9
+
10
+ cv2.imwrite('images/aaa/frame_{0:03}.png'.format(i), img)
6
11
  ```