AZYL! 3 (260112)
https://gyazo.com/0e7180d5188f4079ea1c39fa87dd2107 https://www.instagram.com/p/DTFX96Nk8_g/
詳細
UNDERCONSTRUCTION
UNDERCONSTRUCTION
UNDERCONSTRUCTION
出演者
斉藤綾子 (ダンサー)
濱田玲 (陶芸家)
https://gyazo.com/5ab110516c603860d53992a958c0c3a1
やる /yr (コレクティブ)
Concept
2Fをパフォーマンスの空間
1Fをギャラリー的な空間(ただしインスタレーションすぎないように)
パフォーマンス全体のコンセプト設計は岩田奎・鳴瀧
システム設計はNagasena・日聖翼が担当
code:concept 1F
具体的にはシンプルに
2Fでやっていることを複数のカメラ(定点なり、手持ちなり)で撮影(「カメラを回す」)して
それを1Fに配置した複数のディスプレイ
たとえば
プロジェクター、
ブラウン管、
PCの画面、
スマホ
などの複数の表示ディスプレイだけが
空間に配置されていて
それ(あるいは2Fで起こるの物音)を通して、
2Fでパフォーマンスが行われていることが分かる
1Fには基本的には人はいない
ただ淡々と映し出されるだけ
2Fに中央管理PC(メインPC)を配置してそこで作業
ろくろ作りを楽器にして演奏する
(Nagasena担当)
・サーマルカメラ → 音程…ろくろに残った熱
・カメラ → 音色…輪郭を波形(リサージュ)にする
ビジュアル/オーディオ変換…XYscope.js
P5LIVEをローカルで動かす?
コードを替えてソフトコンパイルしたらリセットされてしまうのはつらい
p5.jsをElectronでアプリ化した方が安定するような気がする
途中の変更が難しい
器の輪郭抽出はどうするか
サーマルカメラで輪郭取れれば、照明関係なく対応可能
+OpenCV.js
輪郭をとるいくつかの方法
モルフォロジー勾配
膨張した画像と収縮した画像の差分をとる処理です.
モルフォロジー変換は主に二値画像を対象とし,画像上に写っている図形に対して作用するシンプルな処理を指します.モルフォロジー変換には入力画像と 処理の性質を決める 構造的要素 ( カーネル )の二つを入力とします.基本的なモルフォロジー処理として,収縮(Erosion)と膨張(Dilation)が挙げられます.
https://gyazo.com/57d772c8c2dd04573de3d57aeed0ab8b
画像の勾配
(OpenCVは)Sobel, Scharr, Laplacianという3種類の勾配検出フィルタ(もしくはハイパスフィルタ)
Canny法
John F. Cannyが1986年に発表したエッジ検出のためのアルゴリズム
OpenCVにおける輪郭(領域)
輪郭とは同じ色や値を持つ(境界線に沿った)連続する点をつなげて形成される曲線のこと
cv2.findContours()
最終的に輪郭抽出に採用した方法
精度よくとれたとはいえないが、現場で合わせるため、閾値調整は必要
1.バンドパスフィルタ (上限/下限の閾値設定)で二値化処理
2.モルフォロジー変換
3.輪郭抽出(cv.findContours)
4.輪郭近似(cv.approxPolyDP)...Douglas-Peuckerアルゴリズムで輪郭を近似し、頂点数を削減して滑らかに
UI
スクリーン上でブラウザのウィンドウを動かしたら描画に影響」「2つのブラウザのウィンドウの一方を動かすと他方に影響」という方向の実装作品の技術メモ
UIと出力映像をわけるときに使えそう
音
ADSR
4:サウンドの作成と加工(エンベロープ) p5.sound.js サウンド – HIM.CO ヒム・カンパニー
p5.jsでHIKMICRO Mini2 V2(サーマルカメラ)はどう認識されるか(画像エンコーディングの対応形式)
ffmpegコマンドで画像フォーマットを確認する(PowerShell)
カメラデバイスの一覧を取得
code:powershell
ffmpeg -list_devices true -f dshow -i dummy 2> devices.txt; Get-Content devices.txt
特定のカメラ(UVC Camera)の対応フォーマット情報を取得
code:powershell
ffmpeg -f dshow -list_options true -i video="UVC Camera" 2> format_info.txt; Get-Content format_info.txt
ダンサーの動きに、照明を明滅させる
→日聖翼
ディスプレイの配置
2Fに配置するカメラ(「カメラを回す」)
スマホをどれくらい用意できるか問題(セッティングした上で)
・定点2台くらい?
前川(or 鳴瀧)のスマホでInstaLiveやりつつ、それをキャプチャしてメインPCに流す、でもいいのかもしれない?
この場合、キャプチャボードを用いて有線接続をする?
・手持ち1台?
※台数検討
<やる>メンバーは5人なのでそれぞれのスマホを使えるとして
入力分 3台
出力分 1台
(予備 1台)
が妥当だろうか?
1Fに配置するディスプレイ
・プロジェクター
7m HDMIケーブルで直接接続
・ディスプレイ 2台
60inch
30inch
・ブラウン管
→RPi4ないしRPi3を使って接続(有線LAN)
実装:要検討
・ノートPC
TouchDesigner(NDI経由)
・スマホ
アプリとか(無料)
・2F 撮影(入力)用
NDI Camera (Android)
https://gyazo.com/dd4e2a8f5c7397fc7b08494d3fc55d67
Wi-Fiの5GHz帯でPC/スマホ側で共通で使う
720p / 25fps 設定(出来るだけ負荷を落とす)
・モニター用
Tdから直NDIをスマホ側で受け取るのが理想だが、うまい受信アプリがなさそうなのでRTSPを用いて受信する
Td (NDI出力) → OBS (RTSP出力) → スマホ(VLC for Android)
VLC for Android
https://gyazo.com/abced783e38a9a0f569d2c9810435c9c
もっと > ストリームから「新しいストリーム」でrtspのアドレスを入力する
rtsp://(PCのIPアドレス):555/live
例) rtsp://127.0.0.1:555/live
※IPアドレスはipconfigコマンドでIPv4の部分にあるものを使い、555やliveの部分はOBS側で設定する
※※※
OBS-RTSPServer(OBSプラグイン)
出力解像度を640 x 360に落としておく(遅延問題のため)
DistroAV (NDI送受信用のOBSプラグイン)
使い方
追加機材
・有線LANスイッチングハブ →いらないかもしれない
LSW-5GSE/NBK (5Port) 1,780 yen