log/20250424/岩田 瑛
の編集
Top
/
log
/
20250424
/
岩田 瑛
[
トップ
] [
編集
|
差分
|
履歴
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
20250410/岩田 瑛/4月14日(月)課題
20250410/岩田 瑛/Latexまとめ
20250410/岩田 瑛/Ltexまとめ
20250410/岩田 瑛/wiki編集方法
20250415/森田 晟生/パワーポイント画像の貼り付け
20250422/佐藤綺羅/2値化処理
20250422/佐藤綺羅/ファイル保存
20250422/佐藤綺羅/原画像と処理画像の表示
20250422/佐藤綺羅/描画関数
20250422/佐藤綺羅/画像の色変換
AutoTicketLinkName
BracketName
FormattingRules
FrontPage
Help
InterWiki
InterWikiName
InterWikiSandBox
log/20250410/岩田 瑛
log/20250410/田中悠陽
log/20250415/議事録yano
log/20250415/議事録 森田晟生
log/20250415/4月15日議事録 藤原匡力
log/20250417/宮木大河
log/20250417/岩田 瑛
log/20250422/今日の予定
log/20250422/佐藤綺羅
log/20250422/大井駿友
log/20250422/駒井舜
log/20250424/今日の予定
log/20250424/岩田 瑛
log/20250424/池﨑蓮
log/20250508/今日の予定
log/20250508/宮木大河
log/20250508/駒井舜
log/20250515/佐藤綺羅
log/20250515/大井駿友
log/20250520/今日の予定
log/20250520/田中悠陽
log/20250520/矢田 竜輝
log/20250522/宮木大河
log/20250522/森田晟生
log/20250527/大井駿友
log/20250527/岩田 瑛
log/20250605/池﨑蓮
log/20250605/田中悠陽
MenuBar
PHP
PukiWiki
PukiWiki/1.4
PukiWiki/1.4/Manual
PukiWiki/1.4/Manual/Plugin
PukiWiki/1.4/Manual/Plugin/A-D
PukiWiki/1.4/Manual/Plugin/E-G
PukiWiki/1.4/Manual/Plugin/H-K
PukiWiki/1.4/Manual/Plugin/L-N
PukiWiki/1.4/Manual/Plugin/O-R
PukiWiki/1.4/Manual/Plugin/S-U
PukiWiki/1.4/Manual/Plugin/V-Z
RecentDeleted
SandBox
WikiEngines
WikiName
WikiWikiWeb
YukiWiki
ノイズ
[[FrontPage]] *画像関連 [#rde2915d] **画像の拡大・縮小 [#b63e3525] 画像の高さ(h)と幅(w)を取得し、幅を基準にして画像を任意の値に縮小or拡大をするための縮小率を計算し、cv2.resize 関数で、画像をリサイズしています。 h,w = img.shape[:2] r = X/w Xピクセルに縮小するための比の計算 img = cv2.resize(img, None, fx=r,fy=r)#縦横の比を維持したまま拡大、縮小 **注目領域の取得 [#i47b95ed] 注目領域を取得するためには、始点と終点の座標を取り(ここは気合)、それをもとに取得する。 kaoimg = img[52:216, 189:365]注目領域の取得[始点y:終点y+1, 始点x:終点x+1] **画像の四則演算 [#p3a7c5ee] 四則演算の(+)画素の値増えるから明るくなる、(-)暗くなる。(/)全体的に暗くなるが、実数でないと行けないため、//を利用する。~ また、0~255の範囲を超えると、計算結果-255の結果が値になる。~ ex)暗いところは明るく、明るいところはそのままにしておくコード kaoimg = kaoimg//2+127#0=>127,255=>255にする書き方 *GUI操作( mouse, waitKey, double buffering ) [#k94df602] **cv2.setMouseCallback でマウス操作を追加。~ [#d63135a5] よく使うマウスイベントは以下の通り~ 左ボタンクリック (EVENT_LBUTTONDOWN, EVENT_LBUTTONUP)~ 中ボタンクリック (EVENT_MBUTTONDOWN, EVENT_MBUTTONUP)~ 右ボタンクリック (EVENT_RBUTTONDOWN, EVENT_RBUTTONUP)~ 左ボタンダブルクリック (EVENT_LBUTTONDBLCLK)~ 中ボタンダブルクリック (EVENT_MBUTTONDBLCLK)~ 右ボタンダブルクリック (EVENT_RBUTTONDBLCLK)~ マウスホイール (EVENT_MOUSEWHEEL, getMouseWheelDelta)~ ex)画像上でクリックした場所に丸を描く #code(py){{ def draw_circle(event, x, y, flags, param): if event == cv2.EVENT_LBUTTONDOWN: # 左クリックされたら cv2.circle(img, (x, y), 20, (0, 0, 255), -1) # 赤丸を描く }} **cv2.waitKey() でキー入力待ち。~ [#b397a8bd] ex)ESCキー(27)が押されたら終了。 #code(py){{ if cv2.waitKey(10) & 0xFF == 27: # ESCキー = 27 break }} **.copy [#k2f5af7c] ex)範囲取得した画像のコピーを作成.copyは入力のコピーを作る際にも有用 kaoimg = img[52:216, 189:365].copy() *番外編 [#f73300e5] **範囲取得した画像内を加工 [#d5acaa2b] ex)範囲内に赤四角作成 cv2.rectangle(kaoimg, (10,10),(30,30),(0,0,255),-1) **半透明塗りつぶしのやり方 [#sd7081a6] ex)半透明赤の塗りつぶしのやり方①~ 真っ黒塗りつぶしを作成→真っ黒を真っ赤にする→元画像に半透明真っ赤合体の流れで行う redimg = np.zeros( kaoimg.shape, dtype=np.uint8) 真っ黒作成 redimg[:,:] = (0,0,255)真っ黒を真っ赤に kaoimg = kaoimg//2 + redimg//2半透明真っ赤合体 半透明赤の塗りつぶしのやり方②~ redimg = np.zeros( kaoimg.shape, dtype=np.uint8) 真っ黒作成 redimg[:,:] = (0,0,255)真っ黒を真っ赤に kaoimg = (kaoimg*.7 + redimg*.3).astype(np.uint8) img[52:216, 189:365] = kaoimg部分的に加工したものを元画像に貼り付ける=>透明色の塗りつぶし
タイムスタンプを変更しない
[[FrontPage]] *画像関連 [#rde2915d] **画像の拡大・縮小 [#b63e3525] 画像の高さ(h)と幅(w)を取得し、幅を基準にして画像を任意の値に縮小or拡大をするための縮小率を計算し、cv2.resize 関数で、画像をリサイズしています。 h,w = img.shape[:2] r = X/w Xピクセルに縮小するための比の計算 img = cv2.resize(img, None, fx=r,fy=r)#縦横の比を維持したまま拡大、縮小 **注目領域の取得 [#i47b95ed] 注目領域を取得するためには、始点と終点の座標を取り(ここは気合)、それをもとに取得する。 kaoimg = img[52:216, 189:365]注目領域の取得[始点y:終点y+1, 始点x:終点x+1] **画像の四則演算 [#p3a7c5ee] 四則演算の(+)画素の値増えるから明るくなる、(-)暗くなる。(/)全体的に暗くなるが、実数でないと行けないため、//を利用する。~ また、0~255の範囲を超えると、計算結果-255の結果が値になる。~ ex)暗いところは明るく、明るいところはそのままにしておくコード kaoimg = kaoimg//2+127#0=>127,255=>255にする書き方 *GUI操作( mouse, waitKey, double buffering ) [#k94df602] **cv2.setMouseCallback でマウス操作を追加。~ [#d63135a5] よく使うマウスイベントは以下の通り~ 左ボタンクリック (EVENT_LBUTTONDOWN, EVENT_LBUTTONUP)~ 中ボタンクリック (EVENT_MBUTTONDOWN, EVENT_MBUTTONUP)~ 右ボタンクリック (EVENT_RBUTTONDOWN, EVENT_RBUTTONUP)~ 左ボタンダブルクリック (EVENT_LBUTTONDBLCLK)~ 中ボタンダブルクリック (EVENT_MBUTTONDBLCLK)~ 右ボタンダブルクリック (EVENT_RBUTTONDBLCLK)~ マウスホイール (EVENT_MOUSEWHEEL, getMouseWheelDelta)~ ex)画像上でクリックした場所に丸を描く #code(py){{ def draw_circle(event, x, y, flags, param): if event == cv2.EVENT_LBUTTONDOWN: # 左クリックされたら cv2.circle(img, (x, y), 20, (0, 0, 255), -1) # 赤丸を描く }} **cv2.waitKey() でキー入力待ち。~ [#b397a8bd] ex)ESCキー(27)が押されたら終了。 #code(py){{ if cv2.waitKey(10) & 0xFF == 27: # ESCキー = 27 break }} **.copy [#k2f5af7c] ex)範囲取得した画像のコピーを作成.copyは入力のコピーを作る際にも有用 kaoimg = img[52:216, 189:365].copy() *番外編 [#f73300e5] **範囲取得した画像内を加工 [#d5acaa2b] ex)範囲内に赤四角作成 cv2.rectangle(kaoimg, (10,10),(30,30),(0,0,255),-1) **半透明塗りつぶしのやり方 [#sd7081a6] ex)半透明赤の塗りつぶしのやり方①~ 真っ黒塗りつぶしを作成→真っ黒を真っ赤にする→元画像に半透明真っ赤合体の流れで行う redimg = np.zeros( kaoimg.shape, dtype=np.uint8) 真っ黒作成 redimg[:,:] = (0,0,255)真っ黒を真っ赤に kaoimg = kaoimg//2 + redimg//2半透明真っ赤合体 半透明赤の塗りつぶしのやり方②~ redimg = np.zeros( kaoimg.shape, dtype=np.uint8) 真っ黒作成 redimg[:,:] = (0,0,255)真っ黒を真っ赤に kaoimg = (kaoimg*.7 + redimg*.3).astype(np.uint8) img[52:216, 189:365] = kaoimg部分的に加工したものを元画像に貼り付ける=>透明色の塗りつぶし
テキスト整形のルールを表示する