以前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
関連記事
Unityの薄い本
オープンソースの人体モデリングツール『MakeHuman』の...
OpenCVの超解像(SuperResolution)モジュ...
オープンソースの顔の動作解析ツールキット『OpenFace』
HD画質の無駄遣い
ZBrushで作った3Dモデルを立体視で確認できるVRアプリ...
OpenCV 3.1から追加されたSfMモジュール
uvでWindows11のPython環境を管理する
UnityのGlobal Illumination
Cartographer:オープンソースのSLAMライブラリ
スクレイピング
Web経由でRaspberry PiのGPIOを操作したい
AndroidもopenGLも初心者さ (でもJavaは知っ...
OpenFace:Deep Neural Networkによ...
Mask R-CNN:ディープラーニングによる一般物体検出・...
頭蓋骨からの顔復元と進化過程の可視化
Zibra Liquids:Unity向け流体シミュレーショ...
Managing Software Requirements...
iPhoneアプリ開発 Xcode 5のお作法
WordPressの表示を高速化する
映像ビジネスの未来
Model View Controller
オープンソースの取引プラットフォーム
CycleGAN:ドメイン関係を学習した画像変換
UnityでShaderの入力パラメータとして行列を渡す
タマムシっぽい質感
AnacondaとTensorFlowをインストールしてVi...
Seleniumを使ったFXや株の自動取引
ROSでガンダムを動かす
Verilog HDL
サンプルコードにも間違いはある?
PythonでBlenderのAdd-on開発
PyMC:Pythonのベイズ統計ライブラリ
Pylearn2:ディープラーニングに対応したPythonの...
OpenCV 3.1のsfmモジュールを試す
UnityのuGUIチュートリアル
書籍『ROSプログラミング』
ブログのデザイン変えました
為替レートの読み方 2WAYプライス表示
UnityでOpenCVを使うには?
IronPythonを使ってUnity上でPythonのコー...
OpenMesh:オープンソースの3Dメッシュデータライブラ...
コメント