图漾相机_Ubuntu编译PYTHON 接口

文章目录

  • 一、编译Comport3 SDK(C++)
  • 二、python SDK下载链接
  • 三、编译步骤链接
  • 四、编译SWIG并安装
  • 五、编译python接口

一、编译Comport3 SDK(C++)

二、python SDK下载链接

 [https://gitee.com/jet_zou/camport3](https://gitee.com/jet_zou/camport3)

三、编译步骤链接

https://percipiodc.readthedocs.io/en/latest/getstarted/index.html#build-pc-environment-label

四、编译SWIG并安装

https://blog.csdn.net/qq_45237293/article/details/105282298

五、编译python接口

Python下载链接:https://gitee.com/jet_zou/pcammls(有相关编译文档)
Python安装python-opencv、 numpy
设置camport3和python版本
图漾相机_Ubuntu编译PYTHON 接口_第1张图片

Cmake ----make-----make install 安装默认位置 /usr/local/PYTHON/
运行/usr/local/PYTHON/ 的例程。生成的库也在里面。

如果遇到jpeg解码问题
主要针对opencv4.x:
修改~/swig/py_extend.i

#old
__U8C1 = [TY_PIXEL_FORMAT_MONO , TY_PIXEL_FORMAT_BAYER8GB , TY_PIXEL_FORMAT_BAYER8BG , TY_PIXEL_FORMAT_MJPG, TY_PIXEL_FORMAT_JPEG]
__U8C2 = [TY_PIXEL_FORMAT_YVYU,TY_PIXEL_FORMAT_YUYV]
__U8C3 = [TY_PIXEL_FORMAT_RGB,TY_PIXEL_FORMAT_BGR]
__U16C1 = [TY_PIXEL_FORMAT_DEPTH16]
#new
__U8CX = [TY_PIXEL_FORMAT_MJPG, TY_PIXEL_FORMAT_JPEG]
__U8C1 = [TY_PIXEL_FORMAT_MONO , TY_PIXEL_FORMAT_BAYER8GB , TY_PIXEL_FORMAT_BAYER8BG]
__U8C2 = [TY_PIXEL_FORMAT_YVYU,TY_PIXEL_FORMAT_YUYV]
__U8C3 = [TY_PIXEL_FORMAT_RGB,TY_PIXEL_FORMAT_BGR]
__U16C1 = [TY_PIXEL_FORMAT_DEPTH16]
#old
if pformat in self.__U8C1:
        sz = self.height*self.width
        return uint8_t_ARRAY.ptr_as_nparray2d(self.buffer,self.height,self.width)
    elif pformat  in self.__U8C2:
        return uint8_t_ARRAY.ptr_as_nparray3d(self.buffer,self.height,self.width,2)
    elif pformat  in self.__U8C3:
        sz = self.height*self.width*3
        return uint8_t_ARRAY.ptr_as_nparray3d(self.buffer,self.height,self.width,3)
    elif pformat  in self.__U16C1:
        sz = self.height*self.width
        return uint16_t_ARRAY.ptr_as_nparray3d(self.buffer,self.height,self.width,1)
    else:
        raise Exception('not supported format {}'.format(pformat))
#new
if pformat in self.__U8CX:
        sz = self.size
        return uint8_t_ARRAY.ptr_as_nparray1d(self.buffer,self.size)
if pformat in self.__U8C1:
        sz = self.height*self.width
        return uint8_t_ARRAY.ptr_as_nparray2d(self.buffer,self.height,self.width)
    elif pformat  in self.__U8C2:
        return uint8_t_ARRAY.ptr_as_nparray3d(self.buffer,self.height,self.width,2)
    elif pformat  in self.__U8C3:
        sz = self.height*self.width*3
        return uint8_t_ARRAY.ptr_as_nparray3d(self.buffer,self.height,self.width,3)
    elif pformat  in self.__U16C1:
        sz = self.height*self.width
        return uint16_t_ARRAY.ptr_as_nparray3d(self.buffer,self.height,self.width,1)
    else:
        raise Exception('not supported format {}'.format(pformat))

你可能感兴趣的:(图漾相机,python,ubuntu,开发语言)