以前NumSharpを調べた時に
Pythonと.NETを連携させるPython.NETの存在を知った。MITライセンスなので商用利用も可能です。
Python.NET
Python.NET (pythonnet)はPythonプログラマがWindowsの.NET 4.0+共通言語ランタイム(CLR)、およびLinuxとOSXのMonoランタイムとほぼシームレスに統合できるようにするパッケージです。Python.NETは.NET開発者向けの強力なアプリケーションスクリプトツールを提供します。このパッケージを使用することで、CLR (C#, VB.NET, F#, C++/CLI)を対象とする任意の言語で記述された.NETサービスとコンポーネントを使用して、.NETアプリケーションをスクリプト化したり、Pythonで.NETアプリケーション全体を構築できます。
Pythonから.NETを呼べるし、.NETからPythonを呼べる。
Python.NETはGitHubで公開されており、インストール方法はGitHubのWikiを参照。
試した方々の記事↓
https://qiita.com/hogegex/items/3743225a7af13e93df78
https://tadaoyamaoka.hatenablog.com/entry/2020/06/02/214308
IronPythonのように別途特別な実行環境を用意するわけでは無く、純粋にPython環境を叩けるということなので、最近の機械学習系のライブラリもそのまま.NETから利用できるらしい。
以前はIronPythonぐらいしか.NET連携の手段が無かったから、対応していないパッケージが多かったよな。
気になるのは「Unityでも使えるのか」という点ですが、「Unityで動かした」という書き込みと共に「クラッシュした」という報告も見かけるのでなんとも。。。
2023年 追記:
Python Embeddable PackageをUnityのStreamingAssetsフォルダに配置して、ビルドしたアプリに同梱・配布する方法(Windows限定)↓
https://zenn.dev/shiena/articles/unity-python
関連記事
Math Inspector:科学計算向けビジュアルプログラ...
ブログの復旧が難航してた話
Unityで学ぶC#
3Dグラフィックスの入門書
HerokuでMEAN stack
OANDAのfxTrade API
UnityでTweenアニメーションを実装できる3種類の無料...
マルコフ連鎖モンテカルロ法
オープンソースのプリント基板設計ツール『KiCad』
動的なメモリの扱い
仮想関数
OpenCVの超解像(SuperResolution)モジュ...
Zibra Liquids:Unity向け流体シミュレーショ...
ドラマ『ファーストクラス』のモーショングラフィックス
KelpNet:C#で使える可読性重視のディープラーニングラ...
ROSの薄い本
Unityからkonashiをコントロールする
書籍『ゼロから作るDeep Learning』で自分なりに学...
UnrealCV:コンピュータビジョン研究のためのUnrea...
Oculus Goを購入!
AfterEffectsプラグイン開発
Live CV:インタラクティブにComputer Visi...
オープンソースの顔の動作解析ツールキット『OpenFace』
HD画質の無駄遣い
スクレイピング
OpenCV 3.3.0 contribのsfmモジュールの...
Blendify:コンピュータービジョン向けBlenderラ...
ManuelBastioniLAB:人体モデリングできるBl...
Managing Software Requirements...
1枚の画像からマテリアルを作成できる無料ツール『Materi...
UnityでLight Shaftを表現する
書籍『仕事ではじめる機械学習』を読みました
Multi-View Environment:複数画像から3...
2D→3D復元技術で使われる用語まとめ
OpenCVでカメラ画像から自己位置認識 (Visual O...
pythonの機械学習ライブラリ『scikit-learn』
オープンソースのIT資産・ライセンス管理システム『Snipe...
Netron:機械学習モデルを可視化するツール
C#で使える遺伝的アルゴリズムライブラリ『GeneticSh...
Unity ARKitプラグインサンプルのチュートリアルを読...
Blender 2.8がついに正式リリース!
Mitsuba 2:オープンソースの物理ベースレンダラ
コメント