from pypylon import pylon
with pylon.InstantCamera(pylon.FirstFound) as camera:
    grab_result = camera.GrabOne(5000)
    pylon.DisplayImage(1, grab_result)
软件

pypylon

Basler视觉硬件的官方Python封装器

pypylon是pylon软件套装的Python接口,可将Basler视觉组件与Python集成。作为Basler的官方产品,您将直接获得我们专家提供的可靠支持。Python为您提供了高灵活性。得益于pypylon开源代码,它还可以根据您的需求进行定制。

pip install pypylon
  • 可靠性与技术支持

    pypylon保持100%开源,但由我们负责开发、交付,并提供技术支持
  • pypylon简介

    超过50个代码示例,包括详尽的文档和入门指南,助您轻松入门
  • pypylon中的完整功能包

    pylon SDK的所有功能在pypylon中也都可用,包括相机配置和图像处理
  • 快速将原型设计变为稳定的视觉方案

    借助Python和pypylon,您可以轻松地将巧思转化为强大的视觉方案,同时还能享受pylon SDK带来的稳定性和速度优势
pypylon文档

pypylon文档和教程

在Basler的文档中,您可以找到各类实用信息,包括安装说明、使用方法以及基本的Basler视觉硬件编程示例。

pypylon让Basler产品的入门变得更轻松。如果您使用Python编程,只需几行代码即可采集到第一张图像,无需使用C++或配置新的工具链。两者均基于相同的pylon技术,因此可以快速测试视觉方案,并将其可靠地部署到生产环境中。
Lennart von Werder
Lennart von Werder
产品经理

因此pypylon值得您的信赖

Python是在全球应用中获得广泛采用的编程语言之一。它易于学习,语法简洁,并且拥有大规模的开源生态系统,可应用于图像处理、数据分析和测试自动化等领域。

pypylon将这些优势与Basler pylon软件套装的强大功能相结合:无论是经验丰富还是初学Python的开发者,都能创建原型设计和图像处理函数,并测试Basler相机,省去复杂的开发环境。这不仅能加快评估速度,提高生产效率,还降低了项目成本。

⭐ 700+ GitHub星标

⬇️ 80,000+次下载

🔄 每月发布
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]}")

仅需几分钟即可发布第一张图像

pypylon API专为Python开发者设计,它并非一个需要后续编译的C++ 封装器,而是采用了类似Python的语法、描述性方法名,并支持IDE的完整自动补全功能。它无需复杂的开发环境,您只需使用几行代码即可连接相机、设置参数,并开始传输首批图像。尽管语法简单,但pylon C++ SDK的全部功能均可使用,覆盖从基本的图像采集到多相机设置、事件处理以及块数据。

在我们的
中,我们将为您讲解如何使用pypylon。

Basler pylon vTool

pypylon 与 vTools — 适配兼容

面向高性能图像处理的 pylon vTools,可经由 pypylon 接口调用 Python,有助于提升开发效率。用户还可在 pylon Viewer 内搭建图像处理管线,基于实时图像完成精准调试,按需灵活集成至应用程序。

查看pylon vTool

可直接使用的示例代码

无论您是首次搭建测试环境,还是处理复杂的多相机应用,我们的代码示例都涵盖了重要的使用实例——既可开箱即用,也可用作您自己项目的开发基础。

查看所有示例代码
采集

连续图像流

支持连续图像采集,可配置曝光、增益和像素格式。支持输出NumPy数组。

grab.py
集成

OpenCV实时
预览

通过cv2.imshow直接显示实时相机画面。内置转换器可将拜耳和黑白格式转换为OpenCV支持的格式。

opencv.py
高级功能

多相机同步

通过InstantCameraArray从多台相机同步采集图像,使用硬件或软件触发器。

grab_multiple_cameras.py
事件

相机事件处理程序

为相机事件注册Python回调函数——以“曝光结束”事件为例进行演示,其中包含帧ID和时间戳。

grab_camera_events.py
块数据

时间戳与元数据

可访问每帧的块数据,包括硬件时间戳、曝光时间及其他相机状态信息。

grabchunkimage.py
工作流程

调试

读取设备信息和相机参数,用于测试功能、传输层和接口。

info_dumper.py

pypylon的实际应用

无论是在生产车间进行质量检测,还是在研究实验室开展工作;无论是开发首个原型设计,还是打造可投入生产的应用,只要将Python的成熟灵活性与工业图像处理技术相结合,pypylon便能大显身手。

适用于食品和瓶子检测的视觉技术

质量控制与检测

用于缺陷检测、测量和完整性验证的图像处理管线,可直接访问相机功能,例如触发器和块数据。
无论是要优化分拣和拾取流程,还是减少存储和检索过程所需的时间,适用于仓储自动化的Basler视觉方案都提供了丰富的应用可能性。

机器人与自动化

面向自主系统、基于相机的导航、物体识别和托盘识别,同时也兼容基于ARM的边缘计算平台。
使用经典算法或AI进行图像分析

机器学习与AI训练

通过NumPy数组将相机图像快速集成到主流机器学习框架中,适合训练数据采集和实时推理。
嵌入式视觉系统

开发与原型设计

无需复杂的开发环境,即可在Jupyter Notebook中快速搭建测试环境,从而在教学和研究中实现快速迭代。

详细了解pypylon

详细了解我们的产品和应用。我们内容详实的综合材料能为您提供各种重要细节。


常见问题解答:关于pypylon

pypylon涵盖了pylon C++ SDK提供的全部功能,并由我们官方负责开发和提供支持。它既适用于快速原型设计,也适用于生产环境中的实际应用。

支持。它可以同时控制多台相机,包括单独配置、同步以及通过多线程并行图像采集。

pypylon支持所有常见的Basler相机接口,包括GigE Vision和USB3 Vision。您可在文档中查看兼容设备的完整列表。

pypylon支持Windows、Linux和macOS系统,使它能够灵活地应用于各种开发和生产环境,覆盖从本地Windows工作站到基于Linux的嵌入式系统。

  • Windows 64位、

  • Linux x86_64和Linux ARM 64位、

  • macOS Intel/ARM 64位

该API仍保持兼容。pypylon现由Basler正式维护、测试和发布,并提供技术支持。我们建议升级至最新版本。

版本兼容性一览

从pypylon 26.1.0开始,其版本号与pylon相机软件套装保持同步。新版本每月同步发布。

pypylon版本

pylon相机软件套装

日期

年/月

年/月

每月

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月

*该表格未列出完整信息。您可以在文档中查看完整的版本说明。

重要提示:

  • 自pypylon 4.0.0起:支持Basler 3D相机(例如Basler ToF相机)和CXP-12

  • 自pypylon 3.0.0起:支持pylon vTool

  • 支持的Python版本:目前最高支持Python 3.13,同时通过ABI3 wheel向后兼容Python 3.9及以上版本

可以。pypylon完全基于BSD许可开源,可在商业项目中不受限制地使用。

使用`pip install pypylon`进行安装后,可通过InstantCamera object访问相机。`Open()`方法用于建立连接,而`GrabOne()`、`StartGrabbing()`和`RetrieveResult()`可用于采集单张图像。查看《入门指南》

是的,pypylon采用BSD许可发布,并可在GitHub上获取。该封装器本身是开源的,但它基于pylon软件套装。用户可以另行安装该套装。

您需要获得什么支持?

我们很乐意提供产品选择建议,并助您为应用找到合适的解决方案。