Python.NET:Pythonと.NETを連携させるパッケージ

以前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.NETGitHubで公開されており、インストール方法はGitHubWikiを参照。



試した方々の記事↓
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

関連記事

フォトンの放射から格納までを可視化した動画

Unreal Engineの薄い本

UnityでOpenCVを使うには?

3DCG Meetup #4に行ってきた

Unity MonoBehaviourクラスのオーバーライド関数が呼び出される順番

Netron:機械学習モデルを可視化するツール

Unityからkonashiをコントロールする

Unityで強化学習できる『Unity ML-Agents』

OpenCVの三角測量関数『cv::triangulatepoints』

iPhoneアプリ開発 Xcode 5のお作法

OpenCV 3.3.0-RCでsfmモジュールをビルド

HerokuでMEAN stack

OpenCVでPhotoshopのプラグイン開発

OpenCVのバージョン3が正式リリースされたぞ

オープンソースの物理ベースGIレンダラ『appleseed』

為替レートの読み方 2WAYプライス表示

UnityでARKit2.0

Point Cloud Utils:Pythonで3D点群・Meshを扱うライブラリ

UnrealCLR:Unreal Engineで.NET Coreを利用できるプラグイン

クラスの基本

Google App Engine上のWordPressでFlickrの画像を貼る

UnityでLight Shaftを表現する

Manim:Pythonで使える数学アニメーションライブラリ

libigl:軽量なジオメトリ処理ライブラリ

『手を動かしながら学ぶエンジニアのためのデータサイエンス』ハンズオンセミナーに行ってきた

NumSharp:C#で使えるNumPyライクな数値計算ライブラリ

hloc:SuperGlueで精度を向上させたSfM・Visual Localization

Alice Vision:オープンソースのPhotogrammetryフレームワーク

Faster R-CNN:ディープラーニングによる一般物体検出手法

konashiのサンプルコードを動かしてみた

OpenCV 3.1とopencv_contribモジュールをVisual Studio 2015で...

Theia:オープンソースのStructure from Motionライブラリ

MPFB2:Blenderの人体モデリングアドオン

UnityのMonoBehaviourクラスをシングルトン化する

スクラッチで既存のキャラクターを立体化したい

ManimML:機械学習の概念を視覚的に説明するためのライブラリ

Open3D:3Dデータ処理ライブラリ

Iterator

DensePose:画像中の人物表面のUV座標を推定する

Javaで作られたオープンソースの3DCGレンダラ『Sunflow』

iOSデバイスのためのフィジカル・コンピューティングツールキット『konashi(こなし)』

AMIMOTO(PVM版)で作成したインスタンスをAMIMOTO (HVM版)へ移行する

コメント