質問編集履歴
3
内容の加筆
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,13 +6,29 @@
|
|
6
6
|
|
7
7
|
やりたい処理としましては、全体的にぼかし処理を加えた画像と何も処理していない元の画像を用意し、下のようなヒートマップ画像のRGB値のRとGが0となっている部分(主に濃い青色の部分)のみをぼかしている画像と入れ替え特定の部分をぼかした画像を作成したいと思っています。
|
8
8
|
|
9
|
-
![ヒートマップ
|
9
|
+
![ヒートマップ](f9d50bb4355ba3eadbebf99adccd0a81.jpeg)
|
10
10
|
|
11
11
|
しかし、上記でも触れたようにBのみの値をを指定した場合ですと上手く特定の部分をボカせたのですが、RとGが0の部分のみぼかすといったことができないでいます。
|
12
12
|
|
13
13
|
|
14
14
|
|
15
15
|
先ほど回答いただいたように訂正したところ青ではなく画像でいうと真っ赤な部分がぼけてしまいました。
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
----
|
20
|
+
|
21
|
+
追記
|
22
|
+
|
23
|
+
下記回答のおかげで差し替えることができました。
|
24
|
+
|
25
|
+
しかし、画像は以下のようになり部分的に上手くいってないような感じがします。
|
26
|
+
|
27
|
+
画像的には大部分ができているので問題はないのですがなるべく綺麗に差し替えれた方がいいのでもし、もう少し改善できるようであればご教授願いたいです。
|
28
|
+
|
29
|
+
画像はぼかしではなくどこが再帰られているか見やすくするために緑の画像に差し替えたものです。
|
30
|
+
|
31
|
+
![出力結果](cfa63298fe5f651e645c07fc6328d4be.jpeg)
|
16
32
|
|
17
33
|
|
18
34
|
|
@@ -123,3 +139,21 @@
|
|
123
139
|
cv2.imwrite(r"/Users/gazou.jpg',img2)
|
124
140
|
|
125
141
|
```
|
142
|
+
|
143
|
+
###回答から変更したコード(変更部分のみ)
|
144
|
+
|
145
|
+
```python
|
146
|
+
|
147
|
+
b, g, r = cv2.split(imgheat)
|
148
|
+
|
149
|
+
|
150
|
+
|
151
|
+
# heatmap の red == 0 かつ green == 0 の画素は差し替える
|
152
|
+
|
153
|
+
img2[(g == 0) & (r == 0)] = blur1[(g == 0) & (r == 0)]
|
154
|
+
|
155
|
+
img2[(b == 128)] = blur1[(b == 128)]
|
156
|
+
|
157
|
+
cv2.imwrite(r"/Users/gazou.jpg',img2)
|
158
|
+
|
159
|
+
```
|
2
コードの訂正
test
CHANGED
File without changes
|
test
CHANGED
@@ -21,6 +21,48 @@
|
|
21
21
|
|
22
22
|
|
23
23
|
```python
|
24
|
+
|
25
|
+
import cv2
|
26
|
+
|
27
|
+
import numpy as np
|
28
|
+
|
29
|
+
import math
|
30
|
+
|
31
|
+
|
32
|
+
|
33
|
+
x=None
|
34
|
+
|
35
|
+
y=None
|
36
|
+
|
37
|
+
xmax=224
|
38
|
+
|
39
|
+
ymax=224
|
40
|
+
|
41
|
+
xcenter=112
|
42
|
+
|
43
|
+
ycenter=112
|
44
|
+
|
45
|
+
Rfigs=[0,128]
|
46
|
+
|
47
|
+
Gfigs=[0,128]
|
48
|
+
|
49
|
+
|
50
|
+
|
51
|
+
img = cv2.imread(r"/Users/1.jpg")#ぼかしたい画像
|
52
|
+
|
53
|
+
imgheat = cv2.imread(r"/Users/2jpg")#ヒートマップ画像
|
54
|
+
|
55
|
+
blur2 = cv2.imread(r"/Users/3.jpg")#ぼかしてある画像
|
56
|
+
|
57
|
+
|
58
|
+
|
59
|
+
img2 = cv2.resize(img,(224,224))
|
60
|
+
|
61
|
+
blur2 = cv2.resize(blur2,(224,224))
|
62
|
+
|
63
|
+
count = 0
|
64
|
+
|
65
|
+
|
24
66
|
|
25
67
|
for Rfig in Rfigs:
|
26
68
|
|
1
修正依頼があったため
test
CHANGED
File without changes
|
test
CHANGED
@@ -3,6 +3,16 @@
|
|
3
3
|
ヒートマップの画像のRGB値のうちBのみ指定した場合は上手くぼかしたものと入れ替えれたが、RとGの値両方指定し、ぼかしたものと入れ替えようとしたらプログラム自体は終了しているのですが入れ替わった画像が出力されませんでした。
|
4
4
|
|
5
5
|
|
6
|
+
|
7
|
+
やりたい処理としましては、全体的にぼかし処理を加えた画像と何も処理していない元の画像を用意し、下のようなヒートマップ画像のRGB値のRとGが0となっている部分(主に濃い青色の部分)のみをぼかしている画像と入れ替え特定の部分をぼかした画像を作成したいと思っています。
|
8
|
+
|
9
|
+
![ヒートマップ画像](3021a6e2e87bab7bc622ec2387a1a011.jpeg)
|
10
|
+
|
11
|
+
しかし、上記でも触れたようにBのみの値をを指定した場合ですと上手く特定の部分をボカせたのですが、RとGが0の部分のみぼかすといったことができないでいます。
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
先ほど回答いただいたように訂正したところ青ではなく画像でいうと真っ赤な部分がぼけてしまいました。
|
6
16
|
|
7
17
|
|
8
18
|
|