質問編集履歴
5
修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,19 +1,18 @@
|
|
1
1
|
tf_num_mask_Bという[B,H,W] サイズのテンソルがあります。channnel*1の画像マスクを想定しています。
|
2
2
|
tf_num_mask_Bの各セルにはすでに固定値として[0, 1, 2, 3, 10, 11, 12, 13, 14]のどれかが入っています。
|
3
3
|
|
4
|
-
このなかの
|
4
|
+
このなかのnum = [1,2,3,10,11,12,13,14]の値を持つtf_num_mask_Bのインデックスのところに次の変数updatesの対応した値をいれて更新したい(入れ替えたい)です。
|
5
|
-
これらの値はnums = [1,2,3,10,11,12,13,14]に収納してあります。
|
6
5
|
|
7
|
-
変数は
|
8
6
|
updates = tf.Variable(initial_value=tf.ones([batch_size, 8], dtype=tf.uint8))
|
9
7
|
です。型はほんとはfloat32がいいです。仮設定です。
|
10
8
|
|
11
9
|
|
12
|
-
|
10
|
+
対応とは
|
13
11
|
例えば tf_num_mask_B[0,1,1]の値が2だったらupdates[0,1]を代入したいといった感じです。
|
14
|
-
一般化するとtf_num_mask_B[
|
12
|
+
一般化するとtf_num_mask_B[b,i,j]の値がXだったらupdates[ b, numsでのXの位置 ]を代入したいといった感じです。
|
15
13
|
|
16
14
|
|
15
|
+
|
17
16
|
それで以下のコードを書きました。for文はあとで書き変えるかもしれないですが、とりえず挙動の確認のためにこのように書いています。
|
18
17
|
|
19
18
|
idxの形は取得されるインデックスの数によって変わり、例えばtf_num_mask_Bで1の値を持つセルが多ければ大きくなります。
|
4
一部削除
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
tf_num_mask_Bという[B,H,W] サイズのテンソルがあります。
|
1
|
+
tf_num_mask_Bという[B,H,W] サイズのテンソルがあります。channnel*1の画像マスクを想定しています。
|
2
2
|
tf_num_mask_Bの各セルにはすでに固定値として[0, 1, 2, 3, 10, 11, 12, 13, 14]のどれかが入っています。
|
3
3
|
|
4
4
|
このなかの[ 1, 2, 3, 10, 11, 12, 13, 14]の値を持つtf_num_mask_Bのインデックスのところに次の変数の対応した値をいれて更新したい(入れ替えたい)です。
|
3
いろいろ修正しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -2,6 +2,7 @@
|
|
2
2
|
tf_num_mask_Bの各セルにはすでに固定値として[0, 1, 2, 3, 10, 11, 12, 13, 14]のどれかが入っています。
|
3
3
|
|
4
4
|
このなかの[ 1, 2, 3, 10, 11, 12, 13, 14]の値を持つtf_num_mask_Bのインデックスのところに次の変数の対応した値をいれて更新したい(入れ替えたい)です。
|
5
|
+
これらの値はnums = [1,2,3,10,11,12,13,14]に収納してあります。
|
5
6
|
|
6
7
|
変数は
|
7
8
|
updates = tf.Variable(initial_value=tf.ones([batch_size, 8], dtype=tf.uint8))
|
@@ -10,8 +11,9 @@
|
|
10
11
|
|
11
12
|
やりたいこと
|
12
13
|
例えば tf_num_mask_B[0,1,1]の値が2だったらupdates[0,1]を代入したいといった感じです。
|
13
|
-
tf_num_mask_B[
|
14
|
+
一般化するとtf_num_mask_B[B,i,j]の値がXだったらupdates[ B, nums[X-1] ]を代入したいといった感じです。
|
14
15
|
|
16
|
+
|
15
17
|
それで以下のコードを書きました。for文はあとで書き変えるかもしれないですが、とりえず挙動の確認のためにこのように書いています。
|
16
18
|
|
17
19
|
idxの形は取得されるインデックスの数によって変わり、例えばtf_num_mask_Bで1の値を持つセルが多ければ大きくなります。
|
2
まちがえた
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
tf_num_mask_Bという[B,H,W] サイズのテンソルがあります。batch*1,channnel*1の画像マスクを想定しています。
|
2
|
-
tf_num_mask_Bの各セルにはすでに固定値として[0, 1, 2, 3, 10]のどれかが入っています。
|
2
|
+
tf_num_mask_Bの各セルにはすでに固定値として[0, 1, 2, 3, 10, 11, 12, 13, 14]のどれかが入っています。
|
3
3
|
|
4
4
|
このなかの[ 1, 2, 3, 10, 11, 12, 13, 14]の値を持つtf_num_mask_Bのインデックスのところに次の変数の対応した値をいれて更新したい(入れ替えたい)です。
|
5
5
|
|
1
変数名を修正した
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,7 +1,7 @@
|
|
1
|
-
|
1
|
+
tf_num_mask_Bという[B,H,W] サイズのテンソルがあります。batch*1,channnel*1の画像マスクを想定しています。
|
2
|
-
|
2
|
+
tf_num_mask_Bの各セルにはすでに固定値として[0, 1, 2, 3, 10]のどれかが入っています。
|
3
3
|
|
4
|
-
このなかの[ 1, 2, 3, 10, 11, 12, 13, 14]の値を持つ
|
4
|
+
このなかの[ 1, 2, 3, 10, 11, 12, 13, 14]の値を持つtf_num_mask_Bのインデックスのところに次の変数の対応した値をいれて更新したい(入れ替えたい)です。
|
5
5
|
|
6
6
|
変数は
|
7
7
|
updates = tf.Variable(initial_value=tf.ones([batch_size, 8], dtype=tf.uint8))
|
@@ -9,14 +9,17 @@
|
|
9
9
|
|
10
10
|
|
11
11
|
やりたいこと
|
12
|
-
例えば
|
12
|
+
例えば tf_num_mask_B[0,1,1]の値が2だったらupdates[0,1]を代入したいといった感じです。
|
13
|
-
|
13
|
+
tf_num_mask_B[2,23,110]の値が10だったらupdates[2,3]を代入したいといった感じです。
|
14
14
|
|
15
15
|
それで以下のコードを書きました。for文はあとで書き変えるかもしれないですが、とりえず挙動の確認のためにこのように書いています。
|
16
16
|
|
17
|
-
idxの形は取得されるインデックスの数によって変わり、例えば
|
17
|
+
idxの形は取得されるインデックスの数によって変わり、例えばtf_num_mask_Bで1の値を持つセルが多ければ大きくなります。
|
18
18
|
|
19
19
|
```python
|
20
|
+
|
21
|
+
tf_num_mask_B = ファイル読み込みなどのコード # [B,H,W] tf.uint8 0-14の値
|
22
|
+
|
20
23
|
def num_to_variable(tf_num_mask_B):
|
21
24
|
|
22
25
|
nums = [1,2,3,10,11,12,13,14]
|