質問編集履歴

2

詳細を更に追記,一部修正

2019/09/17 16:44

投稿

ichi_
ichi_

スコア15

test CHANGED
File without changes
test CHANGED
@@ -14,7 +14,23 @@
14
14
 
15
15
 
16
16
 
17
+ **追記箇所**
18
+
19
+ そうすると,この場合ですと
20
+
21
+ (slice(317L, 392L, None), slice(544L, 692L, None))
22
+
23
+ という出力が得られます
24
+
25
+ 左が画像の縦方向の座標の上下端,右が画像の横方向の座標の左右端に相当します.
26
+
27
+ **追記箇所終わり**
28
+
29
+
30
+
31
+ **追記及び修正箇所**
32
+
17
- この領域の数値取り出したいのですが,Python2.7から3.6へ移行したら,次の書き方をしていたところエラーが出るようになりました.
33
+ この出力から文字等を消して数値のみ取り出したいのですが,Python2.7で
18
34
 
19
35
 
20
36
 
@@ -33,6 +49,18 @@
33
49
  obj = str(obj).translate(None, ",")
34
50
 
35
51
  obj = str(obj).translate(None, "None")
52
+
53
+ obj = obj.split()
54
+
55
+ という処理をし,
56
+
57
+ [317, 392, 544, 692]
58
+
59
+ という出力を得ていました.
60
+
61
+ しかし,最近Python3.6に更新したらエラーを吐きました.
62
+
63
+ **追記及び修正箇所終わり**
36
64
 
37
65
 
38
66
 
@@ -65,3 +93,15 @@
65
93
 
66
94
 
67
95
  どうすればいいでしょうか.
96
+
97
+
98
+
99
+ **更に追記**
100
+
101
+ 正規表現を使えばいい,という回答もいただきましたが,
102
+
103
+ 今度は
104
+
105
+ TypeError: expected string or bytes-like object
106
+
107
+ というエラーが出ます...

1

詳細を記載

2019/09/17 16:44

投稿

ichi_
ichi_

スコア15

test CHANGED
@@ -1 +1 @@
1
- Python2.7から3.xへ移行した際のstr.translateの違
1
+ Python3.xstr.maketransとstr.translateを使たいがどうしてもエラーが出る
test CHANGED
@@ -1,22 +1,38 @@
1
+ 当方,画像処理とか色々とやっています.
2
+
3
+ 二値化画像aを読み込んでラベリングし,オブジェクトを見つけるようにしています.
4
+
5
+
6
+
7
+ 例えば1番にラベル付けられている画像をobjとして読み込み,1番にラベル付けられている領域をobjとして取り出します.
8
+
9
+
10
+
11
+ a = sp.label(a)
12
+
13
+ obj = sp.find_objects(a[0])[1]
14
+
15
+
16
+
1
- Python2.7から3.6へ移行したら,次の書き方をしていたところでエラーが出るようになりました.
17
+ この領域の数値を取り出したいのですが,Python2.7から3.6へ移行したら,次の書き方をしていたところでエラーが出るようになりました.
2
18
 
3
19
 
4
20
 
5
21
  obj = str(obj).translate(None, "slice")
6
22
 
7
- obj = str(obj).translate(None, "(")
23
+ obj = str(obj).translate(None, "(")
8
24
 
9
- obj = str(obj).translate(None, ")")
25
+ obj = str(obj).translate(None, ")")
10
26
 
11
- obj = str(obj).translate(None, "L")
27
+ obj = str(obj).translate(None, "L")
12
28
 
13
- obj = str(obj).translate(None, "[")
29
+ obj = str(obj).translate(None, "[")
14
30
 
15
- obj = str(obj).translate(None, "]")
31
+ obj = str(obj).translate(None, "]")
16
32
 
17
- obj = str(obj).translate(None, ",")
33
+ obj = str(obj).translate(None, ",")
18
34
 
19
- obj = str(obj).translate(None, "None")
35
+ obj = str(obj).translate(None, "None")
20
36
 
21
37
 
22
38