Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
【MLN】Visual Blocks for ML
Search
高橋かずひと
June 24, 2023
Technology
1.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
【MLN】Visual Blocks for ML
高橋かずひと
June 24, 2023
More Decks by 高橋かずひと
See All by 高橋かずひと
【PyCon mini Shizuoka 2026】生成AI時代に画像処理やオーディオ処理のノードエディターを作る理由
kazuhitotakahashi
0
1.3k
【NGK2026S】日本株のシステムトレードに入門してみた
kazuhitotakahashi
0
1.6k
【NGK2025S】動物園(PINTO_model_zoo)に遊びに行こう
kazuhitotakahashi
1
2.5k
【Pycon mini 東海 2024】Google Colaboratoryで試すVLM
kazuhitotakahashi
2
2.5k
【Python東海#44】Pydroid3で画像処理
kazuhitotakahashi
0
2.1k
【Unagi.py 56枚目】動物園(PINTO_model_zoo)に遊びに行こう
kazuhitotakahashi
1
1.9k
【Python東海#43】Image-Processing-Node-Editor
kazuhitotakahashi
0
1.3k
【NGK2023S】 ノードエディタ形式の画像処理ツール「Image-Processing-Node-Editor」
kazuhitotakahashi
0
1.8k
【Pythonデータ分析勉強会#33】「DearPyGuiに入門しました」の続き~Image-Processing-Node-Editor~
kazuhitotakahashi
0
1.9k
Other Decks in Technology
See All in Technology
【Claude Code】鹿野さんに聞く 私の推しの並行開発環境 大公開 / claude-code-parallel-2026-07-15
tonkotsuboy_com
11
7.1k
Claude Code公式skillで 自分の仕事を少しずつ手放そう!(Claude Code開発ノウハウ大公開スペシャル by クラスメソッド)
kaym
1
310
ローカルLLMとLINE Botの組み合わせ その3 / LINE DC Generative AI Meetup #8
you
PRO
0
130
Control Planeで育てるBtoB SaaSの認証基盤 - SRE NEXT 2026
pokohide
1
2.3k
Claude Code 珍プレー好プレー
shinyasaita
0
330
CIで使うClaude
iwatatomoya
0
250
GuardrailからGovernanceへ~AIエージェント運用の次の課題~
sbspsy
2
270
オブザーバビリティ、本当に活用できてる? 〜API連携×生成AIで成熟度を自動評価〜
dmmsre
1
3.1k
穢れた技術選定について
watany
4
450
SRE本の知られざる名シーン / The Hidden Gems of Google SRE Book
nari_ex
1
380
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
110k
インフラ寄りSREでも 開発に踏み出せる〜境界を越えてユーザー体験に向き合いたい〜
sansantech
PRO
2
3.8k
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Odyssey Design
rkendrick25
PRO
2
730
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
240
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
330
Documentation Writing (for coders)
carmenintech
77
5.4k
What's in a price? How to price your products and services
michaelherold
247
13k
The agentic SEO stack - context over prompts
schlessera
0
840
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Are puppies a ranking factor?
jonoalderson
1
3.7k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
170
The SEO identity crisis: Don't let AI make you average
varn
0
510
Transcript
Visual Blocks for ML MLN 2023/06/24
Who am I ? Name Twitter:KzhtTkhs :高橋かずひと 所属 :サイバーエージェント AI事業本部
行政DX Div GovTech開発センター 仕事 :画像処理 兼 なんでも屋 その他:Axross寄稿や インディーゲーム開発の お手伝いしています
Who am I ? Name Twitter:KzhtTkhs :高橋かずひと 所属 :サイバーエージェント AI事業本部
行政DX Div GovTech開発センター 仕事 :画像処理 兼 なんでも屋 その他:Axross寄稿や インディーゲーム開発の お手伝いしています
Image-Processing-Node-Editor 特徴 ・高橋自作のノードエディタ 形式の画像処理アプリ ・ノードをドラッグ& ドロップで接続できる ・各処理を視覚化しながら 処理を試すことが出来る ・OSS(Apache-2.0 license
)
0. Overview
Visual Blocks for ML とは 特徴 ・Google製のノーコード のグラフエディター ・ノードをドラッグ& ドロップで接続できる
・MLワークフローの プロトタイプを視覚化 しながら試すことが出来る ・Web上で動作するデモと Colaboratoryで動く パッケージがある https://visualblocks.withgoogle.com/ より引用
Visual Blocks for ML とは https://visualblocks.withgoogle.com/ より引用 注意点 ・Google製ではあるが、 正式にサポートされている
Google製品ではない ・このプロダクトの関心を 測ることを目的とした 実験的なリリース ・長期的なメンテナンスの 保証はない ※現時点で既にGitHubの更新はあまり活発ではない…… 正確に言うとコア部分がパブリックに開発されていないので状況が謎
1. Input node
Visual Blocks for ML:Inputノード ・Input image ・Input text ・Live camera
Visual Blocks for ML:Inputノード ・Input image ・Input text ・Live camera
・静止画を入力 ・デフォルトで いくつかの テスト画像 ・アップロード も可能
Visual Blocks for ML:Inputノード ・Input image ・Input text ・Live camera
・テキスト入力 が出来る ・他ノードと 組み合わせて 重畳表示や APIの入力に
Visual Blocks for ML:Inputノード ・Input image ・Input text ・Live camera
・Webカメラを 入力画像と して利用 ・( 現時点では ) カメラの切り 替えは不可
2. Effect node
Visual Blocks for ML:Effectノード ・Image Mixer ・Image processor ・Shader processing
・Text processer ・Virtual sticker
Visual Blocks for ML:Effectノード ・Image Mixer ・Image processor ・Shader processing
・Text processer ・Virtual sticker ・2つの画像を合成 ・複数の合成モード ・テキストの重畳表示
Visual Blocks for ML:Effectノード ・Image Mixer ・Image processor ・Shader processing
・Text processer ・Virtual sticker ・以下の画像処理を実行 輝度、コントラスト、 クロップ、リサイズ、 シアー、回転、ブラー ノイズ付与
Visual Blocks for ML:Effectノード ・Image Mixer ・Image processor ・Shader processing
・Text processer ・Virtual sticker ・Code editorで作成した 任意のシェーダーコード を実行
Visual Blocks for ML:Effectノード ・Image Mixer ・Image processor ・Shader processing
・Text processer ・Virtual sticker ・テキスト処理を行う - テキストの結合 - テキストの置換 - Mustacheテンプレート
Visual Blocks for ML:Effectノード ・Image Mixer ・Image processor ・Shader processing
・Text processer ・Virtual sticker ・画像と顔のランドマーク 座標を用いて、画像の オーバーレイ表示を行う
3. Model node
Visual Blocks for ML:Modelノード① ・Body segmentation ・Face detection ・Face landmark
・Gesture Recognition ・Hand pose detection ・Mobilenet ・Object detection ・PaLM Chat
・人物や(一部の)動物を 切り抜いたマスクを 取得する Visual Blocks for ML:Modelノード① ・Body segmentation ・Face
detection ・Face landmark ・Gesture Recognition ・Hand pose detection ・Mobilenet ・Object detection ・PaLM Chat
・顔検出結果(バウンディ ングボックス、キーポイン ト)を取得する Visual Blocks for ML:Modelノード① ・Body segmentation ・Face
detection ・Face landmark ・Gesture Recognition ・Hand pose detection ・Mobilenet ・Object detection ・PaLM Chat
・顔のランドマーク検出結 果を取得する Visual Blocks for ML:Modelノード① ・Body segmentation ・Face detection
・Face landmark ・Gesture Recognition ・Hand pose detection ・Mobilenet ・Object detection ・PaLM Chat
・ハンドジェスチャーを検 出する(エラー出る😇 Visual Blocks for ML:Modelノード① ・Body segmentation ・Face detection
・Face landmark ・Gesture Recognition ・Hand pose detection ・Mobilenet ・Object detection ・PaLM Chat
・手のキーポイント検出結 果を取得する Visual Blocks for ML:Modelノード① ・Body segmentation ・Face detection
・Face landmark ・Gesture Recognition ・Hand pose detection ・Mobilenet ・Object detection ・PaLM Chat
・Mobilenet(v1 or v2) を用いてクラス分類結果を 取得する Visual Blocks for ML:Modelノード① ・Body
segmentation ・Face detection ・Face landmark ・Gesture Recognition ・Hand pose detection ・Mobilenet ・Object detection ・PaLM Chat
・物体検出結果を取得する (モデル不明。 MobileNet-SSDLite?) Visual Blocks for ML:Modelノード① ・Body segmentation ・Face
detection ・Face landmark ・Gesture Recognition ・Hand pose detection ・Mobilenet ・Object detection ・PaLM Chat
・PaLMチャットを実行する ※要APIキー Visual Blocks for ML:Modelノード① ・Body segmentation ・Face detection
・Face landmark ・Gesture Recognition ・Hand pose detection ・Mobilenet ・Object detection ・PaLM Chat
Visual Blocks for ML:Modelノード② ・Portrait depth ・Pose landmark ・Text Toxicity
・TFJS model runner ・TFLite model runner ・PaLM Text Generator
Visual Blocks for ML:Modelノード② ・Portrait depth ・Pose landmark ・Text Toxicity
・TFJS model runner ・TFLite model runner ・PaLM Text Generator ・PaLMによる文章生成を 行う ※要APIキー
Visual Blocks for ML:Modelノード② ・Portrait depth ・Pose landmark ・Text Toxicity
・TFJS model runner ・TFLite model runner ・PaLM Text Generator ・セグメンテーション+ 深度推定結果を取得する
Visual Blocks for ML:Modelノード② ・Portrait depth ・Pose landmark ・Text Toxicity
・TFJS model runner ・TFLite model runner ・PaLM Text Generator ・姿勢推定結果を取得する
Visual Blocks for ML:Modelノード② ・Portrait depth ・Pose landmark ・Text Toxicity
・TFJS model runner ・TFLite model runner ・PaLM Text Generator ・入力テキストが有害な テキストかクラス分類を 行う
Visual Blocks for ML:Modelノード② ・Portrait depth ・Pose landmark ・Text Toxicity
・TFJS model runner ・TFLite model runner ・PaLM Text Generator ・TensorFlow-Hub等の TFJSモデルを実行する ※前処理・後処理はTensor 操作用ノードで実施する
Visual Blocks for ML:Modelノード② ・Portrait depth ・Pose landmark ・Text Toxicity
・TFJS model runner ・TFLite model runner ・PaLM Text Generator ・TensorFlow-Hub等の TFLiteモデルを実行する ※前処理・後処理はTensor 操作用ノードで実施する
4. Output node
Visual Blocks for ML:Outputノード① ・3D Phote ・Bounding box visualizer ・Classification
Viewer ・HTML viewer ・Image comparison ・Image viewer
Visual Blocks for ML:Outputノード① ・3D Phote ・Bounding box visualizer ・Classification
Viewer ・HTML viewer ・Image comparison ・Image viewer ・深度推定結果と画像から 3D画像を表示する
Visual Blocks for ML:Outputノード① ・3D Phote ・Bounding box visualizer ・Classification
Viewer ・HTML viewer ・Image comparison ・Image viewer ・物体検出などのバウンディ ングボックスを画像に重畳表 示する
Visual Blocks for ML:Outputノード① ・3D Phote ・Bounding box visualizer ・Classification
Viewer ・HTML viewer ・Image comparison ・Image viewer ・クラス分類結果を表示する
Visual Blocks for ML:Outputノード① ・3D Phote ・Bounding box visualizer ・Classification
Viewer ・HTML viewer ・Image comparison ・Image viewer ・Tailwind CSSを用いた 簡易なHTMLを表示する
Visual Blocks for ML:Outputノード① ・3D Phote ・Bounding box visualizer ・Classification
Viewer ・HTML viewer ・Image comparison ・Image viewer ・複数画像を並べて 比較表示する
Visual Blocks for ML:Outputノード① ・3D Phote ・Bounding box visualizer ・Classification
Viewer ・HTML viewer ・Image comparison ・Image viewer ・画像を表示する URL指定での画像表示や 複数並べての表示も可能 ※複数表示出来ると、Image comparisonとの 差別化がイマイチ……
Visual Blocks for ML:Outputノード② ・Landmark visualizer ・Mask visualizer ・Tensor to
depthmap ・Tensor to image ・Tensor viewer
Visual Blocks for ML:Outputノード② ・Landmark visualizer ・Mask visualizer ・Tensor to
depthmap ・Tensor to image ・Tensor viewer ・姿勢推定結果などの キーポイントと画像を 用いて可視化する
Visual Blocks for ML:Outputノード② ・Landmark visualizer ・Mask visualizer ・Tensor to
depthmap ・Tensor to image ・Tensor viewer ・セグメンテーションなどの マスクを用いて 切り抜いた画像を表示する
Visual Blocks for ML:Outputノード② ・Landmark visualizer ・Mask visualizer ・Tensor to
depthmap ・Tensor to image ・Tensor viewer ・深度推定結果を擬似カラー で表示する
Visual Blocks for ML:Outputノード② ・Landmark visualizer ・Mask visualizer ・Tensor to
depthmap ・Tensor to image ・Tensor viewer ・Tensorを画像に変換する
Visual Blocks for ML:Outputノード② ・Landmark visualizer ・Mask visualizer ・Tensor to
depthmap ・Tensor to image ・Tensor viewer ・Tensorの値を表示する
5. Tensor node
Visual Blocks for ML:Tensorノード ・Convert tensor type ・Crop and resize
・Preprocess image ・Remap value range ・Tensor picker ・Tensor to classification
Visual Blocks for ML:Tensorノード ・Convert tensor type ・Crop and resize
・Preprocess image ・Remap value range ・Tensor picker ・Tensor to classification ・Tensorの型を変換する
Visual Blocks for ML:Tensorノード ・Convert tensor type ・Crop and resize
・Preprocess image ・Remap value range ・Tensor picker ・Tensor to classification ・Tensorのクロップ、 リサイズを実行する
Visual Blocks for ML:Tensorノード ・Convert tensor type ・Crop and resize
・Preprocess image ・Remap value range ・Tensor picker ・Tensor to classification ・画像に対し前処理を 実行してTensorへ変換する - リサイズ - 正規化
Visual Blocks for ML:Tensorノード ・Convert tensor type ・Crop and resize
・Preprocess image ・Remap value range ・Tensor picker ・Tensor to classification ・最小値、最大値を指定して 値の範囲をリマップする
Visual Blocks for ML:Tensorノード ・Convert tensor type ・Crop and resize
・Preprocess image ・Remap value range ・Tensor picker ・Tensor to classification ・Tensor[]に対し、 インデックスを指定して Tensorを取得する
Visual Blocks for ML:Tensorノード ・Convert tensor type ・Crop and resize
・Preprocess image ・Remap value range ・Tensor picker ・Tensor to classification ・Tensor型のクラス分類の 出力を「Classification viewer」で表示できる形に 変換する
6. MISC node
Visual Blocks for ML:MISCノード ・Code editor ・Custom API ・Embed webcite
・Get image size ・Logger ・String picker ・Text selector ・Url Param
Visual Blocks for ML:MISCノード ・Code editor ・Custom API ・Embed webcite
・Get image size ・Logger ・String picker ・Text selector ・Url Param ・コードを記述するノード ・言語は自由 ・このノード単体では動作 せず、 Shader processing などに接続して使用
Visual Blocks for ML:MISCノード ・Code editor ・Custom API ・Embed webcite
・Get image size ・Logger ・String picker ・Text selector ・Url Param ・Web APIを実行した結果を 取得する
Visual Blocks for ML:MISCノード ・Code editor ・Custom API ・Embed webcite
・Get image size ・Logger ・String picker ・Text selector ・Url Param ・指定URLの内容を iframeとして埋め込む
Visual Blocks for ML:MISCノード ・Code editor ・Custom API ・Embed webcite
・Get image size ・Logger ・String picker ・Text selector ・Url Param ・画像のサイズを取得し json形式で出力する
Visual Blocks for ML:MISCノード ・Code editor ・Custom API ・Embed webcite
・Get image size ・Logger ・String picker ・Text selector ・Url Param ・入力されたデータを ログ出力する
Visual Blocks for ML:MISCノード ・Code editor ・Custom API ・Embed webcite
・Get image size ・Logger ・String picker ・Text selector ・Url Param ・文字列選択リストを 生成し、選択されている 文字列を出力する
Visual Blocks for ML:MISCノード ・Code editor ・Custom API ・Embed webcite
・Get image size ・Logger ・String picker ・Text selector ・Url Param ・文字列を範囲選択し、 選択した内容を出力する
Visual Blocks for ML:MISCノード ・Code editor ・Custom API ・Embed webcite
・Get image size ・Logger ・String picker ・Text selector ・Url Param ・指定URLのURLパラメータ を抽出して出力する ※うまく動かない……調査中
7. Colaboratory
Visual Blocks for ML:Colaboratory ・Colaboratory 向けに visualblocks と言うパッケージが提供されている https://colab.research.google.com/github/google/visualblocks/blob/main/examples/quick_start_style_transfer.ipynb より引用
Visual Blocks for ML:Colaboratory ・Webデモとの大きな違いは、Generic関数を定義しブロックに登録できること
Visual Blocks for ML:Colaboratory
Visual Blocks for ML:Colaboratory
8. 作例
https://github.com/google/visualblocks/tree/main/pipelines/ より引用 その他にも多くの作例が掲載されている
https://github.com/google/visualblocks/tree/main/pipelines/ より引用 その他にも多くの作例が掲載されている
ご清聴ありがとうございました🙂