タグ

cvに関するsh19910711のブックマーク (121)

  • 最近のVisual Odometry with Deep Learning

    社内のCV輪講で使用した資料です。 2017年以降に発表されたDeep Learningを用いたVisual Odometryの手法についてまとめました。

    最近のVisual Odometry with Deep Learning
    sh19910711
    sh19910711 2024/06/10
    "VO; Visual Odometry: 2フレーム以上のカメラ画像間の相対的な姿勢を追跡 / 姿勢の変化を積分 + 大局的なカメラの自己位置を求める / Unsupervised VOの出力を初期値としてTraditional VOを用いるとより正確な推定ができる" 2023
  • 画像から3次元復元しよう!バンドル調整をpythonで実装してみる - Qiita

    はじめに バンドル調整(Bundle Adjustment)は、複数のカメラからの画像データを使用して、カメラの位置と姿勢と三次元点の位置を同時に最適化する手法です。最初の論文は、1958年にD. C. Brownによって提案された1、かなり長い歴史を持つ技術です。 当時はアメリカ空軍が航空写真からの環境復元するための研究でしたが、近年では、visual-SLAMやSfMの普及とともに、より身近なところで使われるようになりました。 有名なvisual-SLAM(例:orb-slam2やVINS-Mono)は、ceresやgtsam、g2oなどのグラフ最適化ライブラリを利用してバンドル調整問題を解いています。しかし、内部の原理をちゃんと理解しないと、課題の改善ができない、独自の研究や発展につながらない可能性が高いです。 この記事では、初心者に向けバンドル調整の理論の紹介と式の導出を行いながら

    画像から3次元復元しよう!バンドル調整をpythonで実装してみる - Qiita
    sh19910711
    sh19910711 2024/06/10
    "Bundle Adjustment: 1958年にD. C. Brownによって提案 + 複数のカメラからの画像データを使用して、カメラの位置と姿勢と三次元点の位置を同時に最適化 / アメリカ空軍が航空写真からの環境復元するための研究"
  • torchdataの使い方:datapipeの扱い方から物体検出データセットを読み込むまで - Qiita

    1. torchdataとは torchdataとは,従来のdatasetを拡張するpytorchのモジュールです. torchdata is a library of common modular data loading primitives for easily constructing flexible and performant data pipelines. 2022/Aug時点で,まだベータ段階なのでAPIは今後変更がありますが,以下ではあまり変化がないと思われる利用方法を紹介します. インストールはpipから. Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/ Collecting torchdata Downloading

    torchdataの使い方:datapipeの扱い方から物体検出データセットを読み込むまで - Qiita
    sh19910711
    sh19910711 2024/06/09
    "torchdata: 保存してあるデータ(やweb上のデータ)をパイプラインの起点として終点であるデータローダーへと処理をつなげる / datapipeをつなげていくだけで処理のパイプラインができる" 2022
  • 第9回全日本コンピュータビジョン勉強会「StyleNeRF: A Style-based 3D Aware Generator for High-resolution Image Synthesis」発表資料

    第9回全日コンピュータビジョン勉強会にて「StyleNeRF: A Style-based 3D Aware Generator for High-resolution Image Synthesisについてわりかし徹底解説を行う資料になっています。

    第9回全日本コンピュータビジョン勉強会「StyleNeRF: A Style-based 3D Aware Generator for High-resolution Image Synthesis」発表資料
    sh19910711
    sh19910711 2024/06/09
    "StyleNeRF: 様々な知見を一つの論文で獲得できる1粒でN度美味しい論文 / NN: 小さい変化で大きく変化する高周波な関数を近似するのがNNは苦手 + フーリエ特徴で座標と視点を埋め込んで入力とする" 2022
  • CVPR2020読み会 Proxy Anchor Loss for Deep Metric Learning

    CVPR2020読み会(後編)の資料です なるべくMetric Learningに良い感じに入門できるようになってます

    CVPR2020読み会 Proxy Anchor Loss for Deep Metric Learning
    sh19910711
    sh19910711 2024/06/09
    "Metric Learning: 未知のクラスも「未知のクラス」として対応できる + 学習時に無いクラスが推論に出てくる課題設定に◎ (Face Recognition, ...) / Proxy Anchor Loss: 各クラスにつき1つある代表点 + 空間的情報は活かしきれてない" 2020
  • 画像データの切り抜きをCNNとopenCVで自動化する - ゼロから始める機械学習

    概要 画像分類では認識したい対象だけのクリーンな画像が欲しいですが、提供データには不要なオブジェクトが多く写ります。また、分類対象が小さくしか写っていないこともあります。 大量の画像データを手動で切り抜くには時間がかかるので、必要部分のみ切り抜く処理をCNNopenCVで教師データありで自動化します。 目的 Kaggleのintel子宮頚部癌スクリーニングコンペに参加し、22位でした。 Intel & MobileODT Cervical Cancer Screening | Kaggle このコンペでは4000pxを超える高解像度のデータが8000枚ほど提供されました。 画像は専用の医療機器で撮ったものからデジカメで撮ったようなものまで、対象の形状や色も違い、医療器具の映り込みもありました。 CNNでの画像分類はメモリの制約上、224pxや299pxなど縮小したものを利用します。 認識

    画像データの切り抜きをCNNとopenCVで自動化する - ゼロから始める機械学習
    sh19910711
    sh19910711 2024/06/08
    "画像分類では認識したい対象だけのクリーンな画像が欲しい / ResNetで特徴を抽出して始点のx,yとlengthを推測する / 縮小した画像でx,y,lengthを求め、元画像と縮小画像の比率に応じてopenCVで切り抜けば完了" 2017
  • HOG特徴量を用いたポケモンのアイコン画像判別 - Qiita

    目的 ポケモンの対戦ログツールは色々とあるんだけど、相手パーティの内容を自分で入力しないといけないのがかったるすぎるので自動で判別してくれるようなものを作りたかった。 HOG特徴量を使ってみたかった。 実装済みのものは記事の一番下に置いてあります。 ※今回のバージョンは偽トロキャプチャなどを使ってモニタなどに映された画面を対象としてます。 HOG特徴量について HOG (Histgram Of Gradient) は画像中の輝度勾配の分布みたいな感じです。 輝度が大きく変化する場所を検出できるので、おおまかに言って画像のエッジ分布を取得できます。 ここの説明がわかりやすかった。 画像で表現すると、 こんな感じになります。 (画像の出典は琴葉姉妹 立ち絵素材(各30種)) 利用できるデータの背景色と判別対象となるゲーム画面での背景色が異なる ゲーム画面の方では位置によって背景色が異なる の2

    HOG特徴量を用いたポケモンのアイコン画像判別 - Qiita
    sh19910711
    sh19910711 2024/06/08
    "HOG: 画像中の輝度勾配の分布みたいな感じ + 輝度が大きく変化する場所を検出できる / 30x30画像をBGRの3色のチャンネルに分割 + 3色分のHOGを結合して972次元のベクトルにする / 8割程度は当てられる" 2017
  • ConvLLaVAを日本語LLMで学習してみた - Qiita

    はじめに Image EncoderにCNN系のモデルであるConvNeXtを使用した、ConvLLaVAが提案されました。 記事はConvLLaVAを使って768x768の画像が入力可能な日語VLMを学習してみました。 また、学習したモデルを日語ベンチマークを使用して他のモデルとの比較も行いました。 モデルの重みは以下で公開しています。 ConvLLaVAについて ConvLLaVAはConvLLaVA: Hierarchical Backbones as Visual Encoder for Large Multimodal Modelsで提案された手法です。 前述したとおりImage EncoderにConvNeXtを使用しているのが特徴ですが他にも以下の2つの工夫点があります。 工夫点1 ConvNeXtにStage 5を追加することで解像度が高い画像を入力しても画像トークン

    ConvLLaVAを日本語LLMで学習してみた - Qiita
    sh19910711
    sh19910711 2024/06/08
    "ConvLLaVA: EncoderにCNN系のモデルであるConvNeXtを使用 + 解像度が高い画像を入力しても画像トークンが少なく ~ / 学習が3段階で行われ + 2段階目では高解像度の画像にも対応できるようにImage Encoderの学習"
  • Elixir で OpenCV (Evision) を使った画像処理(移動、回転、フィルターなど) - Qiita

    はじめに これまで Python での画像処理や AI の学習・推論は実務でも扱ってきました また、 Elixir は Phoenix を使った REST API に数年使っています しかし、 Elixir で画像処理、 AI というのは未経験です というわけで、 Nx と evision で Elixir での画像処理を実装してみました 実装したもの(Docker 上に環境構築):

    Elixir で OpenCV (Evision) を使った画像処理(移動、回転、フィルターなど) - Qiita
    sh19910711
    sh19910711 2024/06/08
    "Nx: Elixir で多次元配列(テンソル)を使うためのライブラリ + numpy のような感覚で使える / evision: OpenCV ラッパー + Nx とも連携できるため、 Python と同じ感覚で画像処理できます" 2022
  • 自分の学習データで画像生成AIを使ってみる話

    画像生成を手元データから追加学習。Stable Diffusionで使える LoRAを作成。ただ、キャラクターの学習は思っていたような結果にならなかった話。

    自分の学習データで画像生成AIを使ってみる話
    sh19910711
    sh19910711 2024/06/08
    "Stable Diffusion: 本屋さんでも1、2冊は本が置いてある / LoRA: 顔データは比較的簡単にできたけど、キャラクターは難しかった / 学習させる行為そのものは楽しいが試行錯誤はあまり自動化できず + かなり時間かかる"
  • threestudioでProlificDreamerを動かす

    はじめに 画像生成だけでなく、3Dモデル生成の品質もかなり上がってきました。特にtext-to-3Dモデルは、驚異的な進歩を見せています。 一番左のDreamFusion(2022年9月公開)から、一番右のProlificDreamer(2023年5月公開)まで、僅か8ヶ月しか経っていません。 研究者であれ開発者であれクリエイターであれ経営者であれ、このぐらいの技術進歩速度は予見して行動すべきでしょうし、少なくとも追従できる必要があると思います。 幸いなことにProlificDreamerの論文公開3日後には、技術解説記事が公開されています。 また、幸いなことに論文公開当日には、3Dモデル生成のライブラリであるthreestudioで非公式実装が公開されています。 公開当初から品質が改善され、昨日2023/6/3時点では以下のような生成ができるようです。 記事では、threestudio

    threestudioでProlificDreamerを動かす
    sh19910711
    sh19910711 2024/06/08
    "3Dモデル生成の品質もかなり上がってきました。特にtext-to-3Dモデルは驚異的な進歩 / DreamFusion(2022年9月公開)から、一番右のProlificDreamer(2023年5月公開)まで僅か8ヶ月" 2023
  • CNNを用いたテクスチャ合成(Texture Synthesis)の仕組みのメモ - めも

    問題設定と評価指標 既存の手法 ノンパラメトリックな手法 パラメトリックな手法 提案手法 概要 詳細 ステップ1 ステップ2 これを基にした画風変換 参考文献 自分の研究が画像処理系の機械学習と関係ないのでやや適当です。 問題設定と評価指標 [Gatys2015]より。 ある画風の画像を入力して、その画風を持った見た目が自然な画像を出力する。 画風の元になった画像が認識できない状態を保って成功とする。つまり画像のつぎはぎが目立つ、といったケースは問題にしない。 CNNを用いた画風変換の元になったモデル。 既存の手法 パラメトリック、ノンパラメトリックと大きく二つの方針に分かれている。 ノンパラメトリックな手法 画風の元になる画像を指定して、そこから画風(を表してると思われるもの)をうまくサンプリングして新しい画像や物体に適用する。 画風変換で検索すると、もはやCNNベースの手法しか検索で出

    CNNを用いたテクスチャ合成(Texture Synthesis)の仕組みのメモ - めも
    sh19910711
    sh19910711 2024/06/07
    "CNNベースの手法が出る前のテクスチャ合成に関するサーベイ論文は[Wei2009]が詳しい / テクスチャに存在する画像の位置情報によらない画風に関する情報は特徴マップの相関で表現できるはず" 2017
  • 【論文読解】NeRF in the Wild: Neural Radiance Fields for Unconstrained Photo Collections - Qiita

    【論文読解】NeRF in the Wild: Neural Radiance Fields for Unconstrained Photo CollectionsDeepLearning 概要 画像集合をもとに新しい視点からの画像を合成する技術であるNeRF in the Wild(NeRF-W)について紹介します。 例えば、Photo Tourism Datasetには、ある特定のランドマークを様々な位置から撮影した写真が多数含まれています。そのような画像集合から、ランドマークの3次元的な形状を把握し、写真集合には含まれない新しい視点から見たときの合成画像を作成することができる、というのが目的となります。新しい視点からの合成結果をつなぎ合わせると、公式のプロジェクトページ内にあるような動画も生成することができます。 先行手法として、もともと提案されていたNeRF1という手法がありました

    【論文読解】NeRF in the Wild: Neural Radiance Fields for Unconstrained Photo Collections - Qiita
    sh19910711
    sh19910711 2024/06/07
    "形状を把握し写真集合には含まれない新しい視点から見たときの合成画像を作成する / NeRF: 位置𝑥と方向𝑑に対して一意に密度𝜎や色𝑐が定まり + 粗いモデルと精細なモデルという2つのモデルを同時に訓練"
  • 【論文】Deformable Convolutional Networks (2017) - Qiita

    [1703.06211] Deformable Convolutional Networks メタ情報 ICCV 2017 oral paper Microsoft Research Asia 著者実装 日語による解説 (見つけられた範囲で) Deformable Convolutional Networks Active Convolution, Deformable Convolution ―形状・スケールを学習可能なConvolution― 機械学習論文読みメモ_108 - Qiita 概要 質的に、CNN はその構造上、幾何的な 1 変換処理に制限されている その欠点を克服するために、 deformable convolution と deformable RoI pooling を提案する 物体検出と semantic segmentation のタスクで結果を検証する 導入

    【論文】Deformable Convolutional Networks (2017) - Qiita
    sh19910711
    sh19910711 2024/06/06
    "CNN: 畳み込みも pooling も固定された位置に対する処理なので、幾何的な変形に対して弱い / 畳み込みに学習可能な2Dオフセットを導入 / 学習済みモデルに deformable の offset field を入れて追加で学習 + ただし細々した調整" 2018
  • アメリカ気象局の天気図の前線描画を学習させたSemantic Segmentationのニューラルネットワークに、日本付近の前線を自動解析させるまで - Qiita

    アメリカ気象局の天気図の前線描画を学習させたSemantic Segmentationのニューラルネットワークに、日付近の前線を自動解析させるまでPythonDeepLearningWeathergrib2SemanticSegmentation アメリカ気象局の天気図の前線描画を学習させたSemantic Segmentationのニューラルネットワークに、日付近の前線描画をさせるまで 1. はじめに しばらくアメリカ暮らしをすることになりました。日で使っていたパソコンも無事移設することが出来ましたので、せっかくの機会ですからアメリカの気象データを使って機械学習をやってみました。まずは「気象可視化画像から前線を自動描画する」を試しました。また、このネットワークに日付近の前線解析をさせてみました。アメリカ流の気象データ解析(前線を検知して描画する)を学習して、日のデータを解析して

    アメリカ気象局の天気図の前線描画を学習させたSemantic Segmentationのニューラルネットワークに、日本付近の前線を自動解析させるまで - Qiita
    sh19910711
    sh19910711 2024/06/06
    "性質の異なる空気の接するところ / 実際の気象場の中にはそういうところは沢山あって、それら全てに前線記号をつけていくわけではありません / どれにどう線を描いていくのかは各国の気象機関によって異なり" 2023
  • Pythonを使って固定視点画像からデジタル数字を抽出する

    はじめに 測定中の装置の様子をウェブカメラなどを使ってリモートで監視しているときに、せっかく監視してるんだからくディスプレイに表示されている数字くらい記録しておきたいと思うことがあります1。これを実現する最も簡単な方法は一定時間ごとの画像取得です。しかし、残された大量の画像から異常や特定期間の様子を探し出すのは少し骨が折れます。「うまいこと数字を抽出してログデータにできたらな…」と一度くらいは思ったことのある方が多いのではないでしょうか。固定視点の画像からたった10種類の数字を判別するだけです。数字の位置を定義して0-9までの雛形のどれに当てはまるか判定していけばできそうです。機械学習など必要ないでしょう。しかし、実際やるとなるといろいろと細かい点でつまずきそうで、なかなか手を出しにくいタスクではあります。この記事では、Pythonを使って非常に単純な仕組みで大量の固定視点画像から数字を抽

    Pythonを使って固定視点画像からデジタル数字を抽出する
    sh19910711
    sh19910711 2024/06/06
    "単純に二値化と言っても、実際の画像を扱ってみると望ましい結果を得るにはいろいろと試行錯誤が必要なことがわかり / 二値化後のノイズ除去や整形に使うモルフォロジー変換(変換の種類とカーネルの形状)" 2018
  • Gaussian Filter を用いた画像の暈し. - Daily Tech Blog

    SFMをやります!」と言いながらだいぶ基礎的なエントリになるのですが, 「SFMをやる!」 ー>「特徴点はSFMの基礎だから,SIFTとAKAZEくらいは抑えておこう.」 ー>「まてよ,Scale Space ってなんや?」 という流れで,フィルタリングを簡単にまとめておくことにしました.「SFMシリーズ!」としてエントリをまとめてみようと思ったのですが,そうするとだいぶ先まで見通してエントリを書かないといけないので,小出しに個別のエントリを書くことにしました.一通りやりきることができたら,あとでリライトします. ということで,国際通りの3次元復元まで,道のりは遠いですね... Gaussian Filter とは. テンプレートマッチングや機械学習するときに,画像の前処理としてフィルタリングをすることもあると思います.自分はこのあたりあまり考えず,「ちょっと画像暈したいなあ.」とかって

    Gaussian Filter を用いた画像の暈し. - Daily Tech Blog
    sh19910711
    sh19910711 2024/06/06
    "画像の前処理としてフィルタリングをすることもある / Gaussian Filterはガウスカーネルを持つフィルタなので,フィルタの設定値として標準偏差(σ)を指定 / この σ がどんな意味を持つのか" 2020
  • react-webcamで撮った画像をFastAPIのサーバーに送信する - Qiita

    はじめに Reactを使ったWebアプリケーションでカメラ撮影する機能について調べてみました。 ただ撮影するだけではなく、サーバーに撮った画像を送信するところまでやってみました。 Reactでカメラを使う Reactでカメラを使用する場合、現状(2023/10月現在)だと以下のライブラリが候補になります。 react-webcam https://github.com/mozmorris/react-webcam react-html5-camera-photo https://github.com/mabelanger/react-html5-camera-photo react-camera-pro https://github.com/purple-technology/react-camera-pro ダウンロード数、GitHubのスター数などreact-webcamが圧倒している

    react-webcamで撮った画像をFastAPIのサーバーに送信する - Qiita
    sh19910711
    sh19910711 2024/06/06
    "react-webcamを使うだけなら難しいことは何もなく、usageにある通り、<WebCam />のみで使用でき / 撮影した画像を取得したい場合は、getScreenShotを呼び出せばよいだけ" 2023
  • ArcFace : 顔認証を行う機械学習モデル

    ArcFaceはメトリックスラーニングという仕組みを使用しており、通常のClassificationタスクにSoftmax Lossを置き換えるAngular Mergin Lossを導入することで、距離学習をClassificationタスクで解くことができるようになっています。 顔同士の距離はCos距離を用いています。Cos距離は検索エンジンでも使用される方法で、正規化された2つのベクトルの内積で計算できます。2つのベクトルが同じであればθが0になりcosθ=1、直行していればθがπ/2になりcosθ=0になります。そのため、類似度として使用できます。 (出典:https://arxiv.org/abs/1801.07698)通常のClassificationタスクでは、Featureを計算した後、FC層でFeatureとWeightの内積を取り、出力にSoftmaxを適用します。 A

    ArcFace : 顔認証を行う機械学習モデル
    sh19910711
    sh19910711 2024/06/06
    "ailia: エッジ向け推論フレームワーク + 公開されている機械学習モデルを使用する / ArcFace: ClassificationタスクにSoftmax Lossを置き換えるAngular Mergin Lossを導入 / バッチ1にそのまま、バッチ2に水平FLIPした画像を入力" 2020
  • ImageNet について考える (2) — Tiny ImageNet の分類

    目的 ImageNet について考える (1) — Tiny ImageNet で Tiny ImageNet を調べたので、実際に分類モデルを訓練してみたい。 やること VGG16 の転移学習ベースで訓練する。ImageNet について考える (1) — Tiny ImageNet でも触れた ImageClassificationProject-IITK が分かりやすいので、これをベースとする。また VGGNet and Tiny ImageNet という記事も参考になる部分が多かったので、一部適用している。 実装には PyTorch を用いて、val acc=0.5 程度で満足することにした。これくらいの画質で簡単なアーキテクチャで 1/2 の確率で 200 クラスの中から正解を引けるなら御の字であろう。 データセット tiny-imagenet-200.zip を展開すると tin

    ImageNet について考える (2) — Tiny ImageNet の分類
    sh19910711
    sh19910711 2024/06/06
    "Tiny ImageNet: VGG16 の転移学習ベース + 分類器だけを差し替え / VGGNet and Tiny ImageNet という記事も参考になる部分が多かった / 分類器以外の層を固定して転移学習 + モデル全体の層を固定解除してファインチューニング"