Detectron2のModel Zooで物体検出、インスタンスセグメンテーション、姿勢推定

概要 Detectron2のModel Zooにある訓練済みを使って、物体検出やインスタンスセグメンテーション、姿勢推定等を行う。 多くのモデルに対して一括で処理できるコードを作った。便利。 Detectron2 FacebookのAI研究グループ(FAIR)が開発している物体検出アル…

denseposeでU.S.A.

youtu.be 完全に出遅れたけど、DensePose使ってみたのでメモ。 Facebook等が発表した、2次元画像から人体の3Dサーフェスモデルを推定しちゃうすごい手法。 詳細とか使い方は下記のページあたりを参照。 shiropen.com github.com 環境 ubuntu 16.04 nvidia-do…

OpenCV 3.4.1で背景差分

OpenCV 3.4.1により背景差分のアルゴリズム7種類を比較。Google Summer of Code 2017で生まれたアルゴリズムの結果がきれいだった。C++、Pythonのサンプルコードあり。

tensorflowでMASK R-CNNによるSemantic Segmentation

TensorFlow Object Detection APIを用いてMask R-CNNによる画像のセマンティックセグメンテーションを行った。

nvidia-dockerインストール、コンテナ等メモ

基本的に公式サイトの説明とかの通りにやるだけなんだけど自分用にメモ。 ホストOS:ubuntu 16.04LTS dockerのインストール 参考: Get Docker for Ubuntu - Docker # https通信で公開鍵ダウンロードするため apt-get update apt-get install curl ca-certif…

C#で3次元グラフを表示する ILNumerics

ILNumericsは.NETで使用可能な数値計算等のライブラリである.グラフ表示機能も備わっているので,それを使ってC#のWindowsフォーム上に3次元グラフを表示する. ILNumericsのインストール 現在最新バージョン(4.x系)のILNumericsは14日間のトライアル版以…

Python+OpenCVで特徴量記述・アルゴリズムまとめ

Python+OpenCVで画像の特徴点の特徴量を記述する.OpenCV2.4.9およびOpenCV3.0 alphaについて使用できるアルゴリズムをまとめる.Python+OpenCVで特徴点抽出・使えるアルゴリズムまとめ OpenCV2.4.9と3.0 alpha - whoopsidaisies's diary の続き. 環境 Wind…

Python+OpenCVで特徴点抽出・使えるアルゴリズムまとめ OpenCV2.4.9と3.0 alpha

軽量プログラミング言語が苦手なので敬遠していたが,世間ではPythonからOpenCVを呼ぶのが流行っているようなので,練習がてらOpenCVで使える特徴点抽出アルゴリズムをまとめてみる.OpenCV2.4.9とOpenCV3.0 alphaについてまとめる.3.0 betaはなぜか動かな…

C#で画像をWavelet変換 Accord.NET

C#で画像のWavelet変換を行う.コンピュータビジョン等の.NET向けのオープンソースのライブラリであるAccord.NET Frameworkを使う. Accord.NETのインストール NuGet経由でインストール可能.プロジェクトを右クリックして「NuGetパッケージの管理」を選択す…

C#で画像を高速フーリエ変換 AForge.NET

C#で画像の高速フーリエ変換(FFT)を行う.コンピュータビジョン等のライブラリであるAForge.NET Frameworkを使う. AForge.NETのインストール Nuget経由でインストール可能.プロジェクトを右クリックして「NuGetパッケージの管理」を選択する.オンライン…

Visual Studioでデバッグ時にOpenCVのMat等の画像を表示できるプラグインが便利

OpenCV公式サイトのNEWSを見てたら「Image Watch plugin for Visual Studio」というのを見つけた.使ってみたら便利そうだったのでメモ.もっと早く知りたかった.わざわざimshowとかのコードを追加してウィンドウを表示させなくてもMatの中の画像を確認でき…

opencvで文字認識その1 Tesseractラッパ

OpenCV3.0系から文字認識モジュールが搭載されるようなので使ってみる.現状の3.0 alphaや3.0 betaでは,文字認識モジュールはメインレポジトリに組み込まれておらず開発用レポジトリのopencv_contribの方に入っているようで,opencv_contribと一緒にOpenCV…

C#で細線化 AForge.NET

C#で画像の細線化処理を行って線画像を作成する.コンピュータビジョン等のライブラリであるAForge.NET Frameworkには,モルフォロジー処理が実装されているのでそれを利用する.細線化のアルゴリズムは以下のサイトあたりを参照. パターン認識の前処理に必…

C#でGISデータ(shpファイル)を開く DotSpatialによる方法

DotSpatialは.NET向けのオープンソースの地理情報システムライブラリである.これを使ってGISで用いられるshpファイル(とセットのshxファイルとdbfファイル)を読み込む. DotSpatialのインストール Nuget経由でインストール可能.プロジェクトを右クリック…

SVGアニメーションで初音ミクの一筆書き

SVGによるアニメーションの勉強メモと,作った初音ミクの一筆書きアニメーション.アニメーションをSVGのanimateMotion要素と,CSSのanimationプロパティを使った.本当はCSS使わないでやりたかったのだけどそれだと面倒くさそうだったのでCSSも使った.元画…

PowerPointのオートシェイプで好きな関数の曲線を作る C# NetOfficeによる方法

sin(x)/xのオートシェイプオートシェイプできれいな波形を作りたいときがたまにあるのだけど,C#を使って上の画像みたいにsin(x)/xのオートシェイプをわりときれいに作れたので手順をまとめる.試した環境はPowerPoint2010とVisual Studio 2013.バージョン…

OpenCVでDeepFlow

opencv_contribを見てたら,DeepFlowというオプティカルフローのアルゴリズムが実装されていたので勉強ついでに使ってみる. DeepFlow DeepFlowはコンピュータビジョンの分野では有名な国際学会ICCV2013でWeinzaepfelらによって発表されたアルゴリズムである…

OpenCV3.0.0-alphaの特徴抽出・マッチングまとめ

OpenCV3.0.0-alphaのパッケージが公開されたと話題になっていたので使ってみる.Change Logを見るとAKAZE特徴量が組み込まれている. AKAZE特徴量の紹介と他特徴量との比較 - 遥かへのスピードランナー によるとAKAZE特徴量は,以前のOpenCVでもakaze-opencv…

C#でDeep Learning(Accord.NETによる方法)

流行りのDeep LearningをC#で試してみる.機械学習やコンピュータビジョン,信号処理等の.NET向けのオープンソースのライブラリであるAccord.NET FrameworkにDeep Learningが実装されているのでそれを使う.Deep Belief Networks(DBN), Deep Neural Networks…

C#でSVM libsvm.netによる方法

SVMのライブラリであるLIBSVMを.NETプロジェクトで使えるようにするlibsvm.netを動かしてみる. libsvm.netのインストール NuGet経由でインストール可能.プロジェクトを右クリックして「NuGetパッケージの管理」を選択する.オンラインから「libsvm.net」を…

C# LINQでFIRフィルタ

LINQを使った,FIRフィルタ演算を行う関数. ソースコード /// <summary> /// FIRフィルタをかけたデータを返す /// </summary> /// <param name="data">入力データ</param> /// <param name="coefficients">フィルタ係数</param> /// <returns>FIRフィルタをかけたデータ</returns> List<double> FiniteImpulseResponseFilter( List<double> data, List<double> coefficients) { return…</double></double></double>

C# LINQで移動平均

LINQを使った,移動平均を計算する関数. ソースコード /// <summary> /// 移動平均を格納した配列を返す /// </summary> /// <param name="data">入力データ</param> /// <param name="num">何個分の平均をとるか</param> /// <returns>移動平均をとったデータ</returns> List<double> MovingAverage( List<double> data, int num) { return Enumerable.Range(0, data.Cou</double></double>…

C#でExcelファイルを作成・グラフを挿入する NetOfficeによる方法

C#からExcelファイルを作って,グラフも挿入したい.以前,以下の記事でClosedXmlというライブラリを使ってC#から簡単にExcelファイルを作る方法を紹介したが,グラフの挿入が出来ないのがグラフの挿入が出来ないのが気になっていた. C#でExcelファイルを作…

C#でグラフを描く OxyPlotのFunctionSeriesによる方法

.NETフレームワーク用のグラフ描画ライブラリであるOxyPlotを使ってグラフを描く. その中でもFunctionSeriesクラスを使って与えられた関数のグラフを描く方法を記す.OxyPlotはWindows Formアプリケーションだけでなく,WPF,Silverlight,Windows8等様々な…

C#で地球を表示する(vtkTexturedSphereSourceによる方法)

VTKのvtkTexturedSphereSourceで球に世界地図のテクスチャを貼り付けることで地球を表示させる.テクスチャを使わずにvtkEarthSourceによって表示する方法は以下のページを参照. C#で地球を表示する(VTKのEarthSourceによる方法) - whoopsidaisies's diar…

C#で地球を表示する(VTKのEarthSourceによる方法)

C#でVTKのvtkEarthSourceクラスによって地球を表示させる. ActiViz ActiVizは,3Dコンピュータグラフィックスの可視化ライブラリVTK(The Visualization ToolKit)のC#ラッパである.NuGetからインストールできる.簡単な解説は以下のページを参照. C#で3…

C++でLINQライクな処理(LINQ for C++による方法)

LINQ for C++ LINQは.NET Framework3.5から組み込まれた機能で,C#等の言語でSQLのデータベース操作のようなことを可能とする.「C# is LINQ」と言う方までいほどに便利な機能.しかし,C++/CLIはLINQに対応する予定はないとのこと.そこで,LINQに似た機能…

C# 名前付きの色一覧を配列に取得してRGB値をDataGridViewに表示する

Color構造体 .NET FrameworkのColor構造体はRGB値で色の指定もできるが,あらかじめRGB値が指定されていて名前を指定して使える色がある.「Color.Red」とか「Color.Green」といった感じで使うことが出来る.本記事では,名前が付いた色の一覧を取得してColo…

C#でOpenCVを使う(C++/CLIによる方法)

OpenCVラッパクラス C#でOpenCVを手軽に使うにはOpenCvSharpをつかう その17(NuGetで導入) - schima.hatenablog.com C#でOpenCVを動かす~NuGetでOpenCV.Netをインストール - whoopsidaisies's diaryのページのように,NuGetからC#ラッパをインストールして…

C#でAI,PSD,EPS,SVG,PDF等の画像ファイルを開く(ImageMagickのC#ラッパMagick.NETによる方法)

Magick.NET 100種類以上の画像を操作したり表示したりできるライブラリImageMagickのC#ラッパMagick.NETを使って,C#でAI,PSD,EPS,SVG,PDF等の画像ファイルを開く. インストール NuGet経由でインストール可能.プロジェクトを右クリックして「NuGetパッ…