from pypylon import pylon
with pylon.InstantCamera(pylon.FirstFound) as camera:
grab_result = camera.GrabOne(5000)
pylon.DisplayImage(1, grab_result)pypylon
Basler公式Pythonラッパー
Basler公式のオープンソースのPythonラッパーとして、pylon Software SuiteやBaslerビジョン製品と簡単に連携可能。専門スタッフによるきめ細かなサポートを受けられるほか、要件に応じて柔軟にカスタマイズできます。
pip install pypylon優れた信頼性&技術サポート
完全オープンソースでありながら、開発・提供元のBaslerが技術サポートをご提供簡単導入
50以上のサンプルコードに加え、クイックスタートガイドを含む充実したドキュメントにより、スムーズな導入を実現豊富な機能
カメラ設定や画像処理をはじめ、pylon SDKの全機能を使用可能短い開発期間
pylon SDKの速度・安定性を活かしながら、Pythonを介して試作開発から製品化にかかる労力を軽減

pypylon製品ドキュメント&チュートリアル
Basler製品ドキュメントにて、pypylonのインストール・使用方法や、Baslerビジョン製品を制御するための基本的なサンプルコードを公開しています。
pypylonがあれば、Basler製品をこれまで以上に簡単にセットアップできます。特にPython環境がある場合、C++言語や新規ツールを使用しなくても、数行のコードのみで撮像を開始することが可能です。また、Pythonとpylonを組み合わせることで、試験効率や製品化の際の信頼性が向上します。

pypylonの特長
簡潔な構文で習得しやすいだけでなく、豊富なオープンソースリソースも備えたPythonは、画像処理やデータ解析、試験の自動化に広く使用されているプログラミング言語です。
pypylonを使用すれば、Pythonの利便性とpylon Software Suiteの機能性を最大限に活かすことができます。しかも、Pythonの初心者・上級者にかかわらず、複雑な開発環境なしで試作や画像処理機能の作成、Baslerカメラの試験が可能であるため、評価の効率化と生産性の向上だけでなく、プロジェクトコストの削減にもつながります。
from pypylon import pylon
with pylon.InstantCamera(pylon.FirstFound) as camera:
print("Using device:", camera.DeviceInfo.ModelName)
camera.Width.TrySetToMaximum()
camera.StartGrabbingMax(100)
while camera.IsGrabbing():
with camera.RetrieveResult(
5000, pylon.TimeoutHandling_ThrowException
) as grab_result:
if grab_result.GrabSucceeded():
with grab_result.GetFirstImageDataComponent() as image_data_component:
img = image_data_component.Array
print(f"SizeX: {image_data_component.Width};"
f"SizeY: {image_data_component.Height}; "
f"Gray value of first pixel: {img[0, 0]}")短時間で撮像準備が完了
Python開発者向けに設計されたpypylon APIは、C++ラッパーを後から変換する場合と異なり、Pythonらしい構文、わかりやすいメソッド名を備えているほか、IDEによる完全自動補完にも対応しています。複雑な開発環境がなくても、数行のコードのみでカメラの接続とパラメーター設定が完了し、すぐに撮像を開始できます。しかも、簡潔な構文にもかかわらず、基本的な画像取得、マルチカメラシステムの構築からイベントやチャンクデータの取得に至るまで、pylon C++ SDKの全機能を利用することが可能です。
pypylonの詳細については、こちらをご覧ください。
OpenCV
ライブビュー
cv2.imshowを介してカメラのライブビューを表示します。内蔵コンバーターにより、ベイヤー形式やモノクロ形式の画像をOpenCVで扱える形式に変換できます。
opencv.pyカメラ同期
InstantCameraArrayを介して複数のカメラを同期します。ハードウェアトリガーまたはソフトウェアウェアトリガーにより、撮像タイミングを合わせることができます。
grab_multiple_cameras.pyカメライベントハンドラー
Pythonを介してカメライベントのコールバックを登録します。露光終了などのカメライベントをフレームID、タイムスタンプとともに取得できます。
grab_camera_events.pypypylonの用途
pypylonは、製造現場の品質管理から研究、試作開発、製品化に至るまで、Pythonを活かした柔軟な画像処理が求められる用途に最適です。
関連資料
Baslerでは、製品の仕様や用途などについて詳しく解説した資料を多数公開しています。ぜひご覧ください。
よくあるご質問(FAQ)
pylon C++ SDKの全機能を利用できるBasler公式のPythonラッパーとして、試作品と製品の両方にお使いいただけます。
はい。カメラの個別設定・同期、スレッド処理による同時撮像を含め、複数のカメラを制御することが可能です。
BaslerカメラのGigE Vision/USB3 Visionモデルに対応しています。詳しくはBasler製品ドキュメントをご覧ください。
Windows、Linux、macOSに対応しています。WindowsベースのホストPCからLinuxベースのエンベデッドシステムに至るまで、幅広い開発・製造環境で柔軟にお使いいただけます。
Windows 10(64bit)
Linux x86_64(64bit)、Linux ARM(64bit)
macOS(Intel/ARM、64bit)
両者ともAPI互換性はありますが、現在はBaslerが保守・試験・配布と技術サポートを行っているため、現行版に更新することをおすすめします。
対応バージョン一覧
pypylonとpylon Camera Software Suiteは、バージョン番号を統一したうえで、毎月同時に更新されています。
pypylon | pylon Camera Software Suite | 更新日 |
バージョン番号 | バージョン番号 | 月次更新 |
|---|---|---|
26.05 | 26.05 | 2026年5月 |
26.01 | 26.01 | 2026年1月 |
4.2.0 | 8.1.0 | 2025年6月 |
4.0.0 | 7.5 | 2024年7月 |
3.0.0 | 7.4 | 2023年11月 |
※一部情報の抜粋です。詳しくはBasler製品ドキュメントをご覧ください。
備考
pypylon 4.0.0以降:Basler 3Dカメラ(Basler ToFカメラなど)、CXP-12に対応
pypylon 3.0.0以降:pylon画像処理ツール/pylon AI画像解析ツールに対応
Pythonの対応バージョン:現在Python 3.13まで対応しているほか、Wheelファイル(abi3)によりPython 3.9以降との後方互換性も確保
はい。BSDライセンスに基づき、完全オープンソースで提供されているため、商用利用の制約はありません。
pip install pypylonでpypylonをインストールし、InstantCameraを介してカメラにアクセスした後、Open()で接続を確立し、GrabOne()、StartGrabbing()、RetrieveResult()を使用して画像を取得します。詳しくはクイックスタートガイドをご覧ください。
はい。pypylonは、BSDライセンスに基づき、GitHub上で公開されているオープンソースのPythonラッパーです。pylon Software Suiteをベースにしていますが、個別にインストールすることができます。





