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

回答編集履歴

2

不十分でしたので、追記しました。

2021/04/19 13:34

投稿

退会済みユーザー
answer CHANGED
@@ -1,3 +1,9 @@
1
+ マウスをクリックのイベント
2
+ ・button_press_event
3
+ ・button_release_event
4
+ のハンドラーを定義して、あとは、JPEG表示しておけばよさそうですー。
5
+
6
+
1
7
  調べたら、少し情報があったので提示しますー。
2
8
 
3
9
  pythonで、マウスの位置が取得できるようです。
@@ -8,4 +14,47 @@
8
14
  Opencvで画像が表示できるようです。
9
15
  https://qiita.com/Kazuhito/items/b2ebd9f9010f1ffcac5b
10
16
 
17
+ [ipywidgets] 18. 画像上でクリックした点の座標をTextareaに表示
18
+ https://sabopy.com/py/ipywidgets-18/
19
+
11
- これからを組み合わせれば、できそうな気がしましたー。
20
+ これからを組み合わせれば、できそうな気がしましたー。
21
+
22
+ 以下、組み合わせた結果になりますー。
23
+
24
+ ```python3
25
+ from PIL import Image
26
+ import matplotlib.pyplot as plt
27
+ import numpy as np
28
+
29
+ im=Image.open('tmp.jpg')
30
+
31
+ global start_x;
32
+ global start_y;
33
+
34
+
35
+ def onclick(event):
36
+ global start_x;
37
+ global start_y;
38
+ print('click' , event.x, event.y)
39
+ start_x = int(event.x)
40
+ start_y = int(event.y)
41
+
42
+
43
+ def onrelease(event):
44
+ global start_x;
45
+ global start_y;
46
+ print('release' , event.x, event.y )
47
+ print('size x=' , event.x - start_x , 'y=' , start_y -event.y )
48
+
49
+
50
+ fig = plt.figure()
51
+
52
+ im_list=np.asarray(im)
53
+ plt.imshow(im_list)
54
+
55
+ fig.canvas.mpl_connect('button_press_event', onclick)
56
+ fig.canvas.mpl_connect('button_release_event', onrelease)
57
+
58
+ plt.show()
59
+
60
+ ```

1

不十分でしたので、追記しました。

2021/04/19 13:34

投稿

退会済みユーザー
answer CHANGED
@@ -3,6 +3,8 @@
3
3
  pythonで、マウスの位置が取得できるようです。
4
4
  https://qiita.com/deaikei/items/7f1acaa3b1db40c33f1a
5
5
 
6
+ https://qiita.com/HajimeKawahara/items/abc24fa2216009523656
7
+
6
8
  Opencvで画像が表示できるようです。
7
9
  https://qiita.com/Kazuhito/items/b2ebd9f9010f1ffcac5b
8
10