文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Linux嵌入式进行python应用开发的方法是什么

2023-06-28 13:27

关注

本篇内容介绍了“Linux嵌入式进行python应用开发的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

Linux嵌入式进行python应用开发的方法是什么

本文所演示的平台来自于ToradexColibri iMX6ARM嵌入式平台,这是一个基于NXP iMX6 ARM处理器,支持单核/双核Cortex-A9的计算机模块平台。

1. 准备

  a).Colibri iMX6 ARM核心版配合ColibriEvaBoard载板,连接调试串口UART1到开发主机方便调试。

  b).ColibriiMX6系统默认的 BSP 中并没有包含Python 和 OpenCV组件,用户可以通过在线安装或者使用基于Ycoto/OpenEmbedded框架重新编译生成包含所需功能的 BSP;我们推荐采用第二种方法,定制化的 BSP 有利于产品进行量产编程。

  ./在线安装 Python 以及扩展组件相关命令

  ————————————

  root@colibri-imx6:~# opkg update

  root@colibri-imx6:~# opkg list | greppython

  root@colibri-imx6:~# opkg install python[optionally list additional packages…]

  ————————————

  ./基于OpenEmbedded框架编译,基本操作请按照这里的说明进行编译,需要修改的文件请参考如下,image更新方法请参考这里。

  ./local.conf文件

  添加如下内容,在生成的image中增加qtwebengine组件

  ————————————

  IMAGE_INSTALL_append = ” opencvpython3 python3-pip zbar”

  PACKAGECONFIG_append_pn-opencv = “python3gstreamer”

  ————————————

2. 测试 Python 环境

  在开发板上命令终端执行

  ————————————

  root@colibri-imx6:~# python3

  Python 3.5.3 (default, Apr 11 2018,16:03:29)

  [GCC 7.3.0] on linux

  Type “help”,”copyright”, “credits” or “license” for moreinformation.

  >>> import cv2

  >>> cv2.version

  ’3.3.0-dev’

  ————————————

  生成的 BSP 包含了 Python3.5.3 和OpenCV 3.3。由于 Python 是一种解释型的语言,不需要预编译,你现在就可以直接在Colibri iMX6 上学习 Python 开发或者运行你现有的 Python 程序。但是这个时候你可能会遇到 Python 模块没有安装的问题,从而无法运行你自己开发的 Python 项目。

3. Python 模块安装

  ./Python 的一个优势是可以直接在本地下载并安装模块组件,这在嵌入式设备上也同样适用。由于之前在OpenEmbedded/Yocto中我们已经添加了 python3-pip,那么现在可以是 pip 命令来安装,如imutils,这是我们接下来所需的组件。

  ————————————

  root@colibri-imx6:~# pip3 install imutils

  ————————————

  ./除了在线安装,Python 模块也可以通过离线交叉编译后进行编译。Zbar默认只支持 python2,我们需要安装pyzbar来支持我们 BSP 中的 python3。

  首先你需要安装Linux SDK,其提供了所需的交叉编译器、头文件、库文件以及一些基本的编译配置文件。另外建议在开发电脑上也安装和 BSP 上版本一致的 Python。

  ————————————

  ben@ben-T430u:~$ cd/usr/local/oecore-x86_64

  ben@ben-T430u:~$.environment-setup-armv7at2hf-neon-angstrom-linux-gnueabi

  ben@ben-T430u:~CFLAGS -I$SDKTARGETSYSROOT/usr/bin/python3.5m”

  ben@ben-T430u:~$ exportHOSTPYTHON=/usr/local/bin/python3.5

  ben@ben-T430u:~$ $HOSTPYTHON setup.py build

  ben@ben-T430u:~$ $HOSTPYTHON setup.pybdist_egg

  ————————————

  将编译完成的 pyzbar-0.1.7-py3.5.egg 复制到开发板上,使用 easy_install-3.5 安装

  ————————————

  root@colibri-imx6:~# easy_install-3.5pyzbar-0.1.7-py3.5.egg

  Processing pyzbar-0.1.7-py3.5.egg

  creating/usr/lib/python3.5/site-packages/pyzbar-0.1.7-py3.5.egg

  Extracting pyzbar-0.1.7-py3.5.egg to /usr/lib/python3.5/site-packages

  Adding pyzbar 0.1.7 to easy-install.pthfile

  Installing read_zbar.py script to /usr/bin

  Installing read_zbar script to /usr/bin

  ————————————

  ./另外OpenEmbedded还提供了大量 Python相关的组件,可以方便地集成到 BSP 中。

  到此,我们已经在开发板上完成 Python 环境搭建,所需的组建也都已经安装。下面我们将通过几个 Python 项目来演示条形码、二维码图片的识别,以及在 USB 摄像头上实时读取二维码。

4. PyZbar条形码和二维码读取

  ./识别静态图片上的条形码

  ————————————

  root@colibri-imx6:~#./barcode_scanner_image.py -i barcode1.png

  ————————————

  ./识别静态图片上的二维码

  ————————————

  root@colibri-imx6:~#./barcode_scanner_image.py -i QR-tdx.png

  ————————————

  ./通过USB 摄像头实时识二维码

  ————————————

  root@colibri-imx6:~#./barcode_scanner_video.py -o rec.csv

“Linux嵌入式进行python应用开发的方法是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-人工智能
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯