質問編集履歴

4

日本語の修正

2017/08/25 13:03

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- Numpyの配列における、濃度差(?)のついた円形データの作成
1
+ Numpyにおける、円形状に並んだ配列の作成
test CHANGED
@@ -1,10 +1,6 @@
1
1
  ###前提・実現したいこと
2
2
 
3
3
  円形上にデータが並んだNumpy配列を用意しようとしています。
4
-
5
- - 不定長の配列に、不定長の半径の円(1ピッチになるのでギザギザになると思いますが)が入っている配列
6
-
7
- - 中心ほど値が高くなるような円
8
4
 
9
5
 
10
6
 
@@ -14,45 +10,15 @@
14
10
 
15
11
 
16
12
 
17
- もし、「細かいことは端折るけどこの関数を使ってみたら?」のような関数の提案でも構いませんので、皆様のご意見をいただけないでしょうか?
18
-
19
13
 
20
14
 
21
15
  ###発生している問題
22
16
 
23
- 例えば、以下のコードだと「十字型」の配列になりますが、円にはできません。
24
-
25
- を不定長で自動でを生成るところを目指しています。
17
+ 配列にそっぽいは収まっていますが、画像確認しようとすると白くつぶれています。
26
18
 
27
19
 
28
20
 
29
- ```python
30
-
31
- array = np.array([[0, 1, 0],
32
-
33
- [1, 1, 1],
34
-
35
- [0, 1, 0]],
36
-
37
- np.uint8)
38
-
39
- ```
40
-
41
21
  ###該当のソースコード
42
-
43
- 自動的に規則正しい配列を作れる関数があるかどうかも知らない状態で、関数を探している状態のためまた出をつけてません。今日夕方くらいまで探してみて、なければfor文をぐりぐり回して力業で(x,y)の値を作ろうかなと考えています。
44
-
45
-
46
-
47
- **2017.08.25 7:20A.M 追記**
48
-
49
- やろうとしていることは`vignette filter`という技術のようです。
50
-
51
- 現状のコードを以下に貼ります。
52
-
53
- ※配列にそれっぽい値は収まっていますが、画像で確認しようとすると白くつぶれています。
54
-
55
-
56
22
 
57
23
  ```Python
58
24
 
@@ -102,8 +68,6 @@
102
68
 
103
69
  ```
104
70
 
105
-
106
-
107
71
  ###試したこと
108
72
 
109
73
  stackoverflowの記事を何件か見ましたが、まだ煮え切っていない状態です。
@@ -122,8 +86,18 @@
122
86
 
123
87
 
124
88
 
89
+
90
+
125
91
  ###補足情報(言語/FW/ツール等のバージョンなど)
126
92
 
127
93
  Python3.x
128
94
 
129
95
  Win10
96
+
97
+
98
+
99
+
100
+
101
+ **2017.08.25 7:20A.M 追記**
102
+
103
+ やろうとしていることは`vignette filter`という技術のようです。

3

コード追加

2017/08/25 13:03

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -44,6 +44,64 @@
44
44
 
45
45
 
46
46
 
47
+ **2017.08.25 7:20A.M 追記**
48
+
49
+ やろうとしていることは`vignette filter`という技術のようです。
50
+
51
+ 現状のコードを以下に貼ります。
52
+
53
+ ※配列にそれっぽい値は収まっていますが、画像で確認しようとすると白くつぶれています。
54
+
55
+
56
+
57
+ ```Python
58
+
59
+ import cv2
60
+
61
+ import numpy as np
62
+
63
+
64
+
65
+ def gaussian_generator(x, y, r, bool_normalize):
66
+
67
+ x_axis = cv2.getGaussianKernel(x, r)
68
+
69
+ y_axis = cv2.getGaussianKernel(y, r)
70
+
71
+ matrix = x_axis * y_axis.T
72
+
73
+
74
+
75
+ if bool_normalize == True:
76
+
77
+ max = 255
78
+
79
+ else:
80
+
81
+ max = 1/np.max(matrix)
82
+
83
+ matrix = max*(matrix/np.max(matrix))
84
+
85
+
86
+
87
+ print(matrix)
88
+
89
+ matrix = np.round(matrix,0)
90
+
91
+ print(matrix)
92
+
93
+
94
+
95
+ cv2.imshow("matrix",matrix)
96
+
97
+ cv2.waitKey(0)
98
+
99
+
100
+
101
+ gaussian_generator(10,10,5,True)
102
+
103
+ ```
104
+
47
105
 
48
106
 
49
107
  ###試したこと

2

日本語の修正2

2017/08/24 22:23

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -21,6 +21,8 @@
21
21
  ###発生している問題
22
22
 
23
23
  例えば、以下のコードだと「十字型」の配列になりますが、円にはできません。
24
+
25
+ これを不定長で自動で値を生成できるところを目指しています。
24
26
 
25
27
 
26
28
 

1

日本語の修正

2017/08/24 21:45

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  円形上にデータが並んだNumpy配列を用意しようとしています。
4
4
 
5
- - 不定長の配列に、不定長の半径の円(ギザギザになると思いますが)が入っている配列
5
+ - 不定長の配列に、不定長の半径の円(1ピッチになるのでギザギザになると思いますが)が入っている配列
6
6
 
7
7
  - 中心ほど値が高くなるような円
8
8
 
@@ -10,7 +10,7 @@
10
10
 
11
11
  ![イメージ](f7608ea505028488efa06e37b6cbb70e.png)
12
12
 
13
- この場合では14x14に半径3の円が収まっているイメージです。
13
+ この場合では14x14に、(7,7)を中心として半径3の円が収まっているイメージです。
14
14
 
15
15
 
16
16
 
@@ -38,7 +38,9 @@
38
38
 
39
39
  ###該当のソースコード
40
40
 
41
- どの関数を使えば良いのかも知らないような状態で、に暮れています。
41
+ 自動的に規則正しい配列を作れる関数があるどうかも知らない状態で、関数を探している状態のためまた出をつけてません。今日夕くらいまで探してみて、なけばfor文をぐりぐり回し力業で(x,y)の値を作ろうかなと考えています。
42
+
43
+
42
44
 
43
45
 
44
46