精华内容
下载资源
问答
  • 不像win系统下给Python安装第三方插件的方式,树莓派的Linux有一种直接复制的方式。 步骤: (1)下载好需要的python扩展 (2)从树莓派文件管理目录找到如下位置: '''python /usr/lib/python2.7/dist-package ...

    对于python第三方库的安装,树莓派的Linux有一种直接复制的方式。


    步骤:

    (1)下载好需要的python扩展库

    (2)从树莓派文件管理目录找到如下位置:

    /usr/lib/python2.7/dist-package


    (3)利用linux指令复制python扩展库文件夹到此位置,注意,要用超级用户权限“sudo”

    格式举例:

    cp【空格】-r /想要复制的文件地址/文件名【空格】目的文件地址


    展开全文
  • 三、通过pycharm下载管理使用第三方库 这个具体的方法就不说了,一般都可以下载,另外换源也可以,方法参考PyCharm中关于安装第三方包的问题,给你三个建议。中的第一个方法。 网上收集的资料的来源: csdn:...

     

     

    一、先推荐一个最好用的方法:通过镜像直接下载

    实例:下载opencv-python(版本3.4.0.16)<注意:包名前面有一个空格>

    pip install --index https://pypi.mirrors.ustc.edu.cn/simple/ opencv-python==3.4.0.16
    

    这里的版本号如果不存在或者格式有误的话,这个cmd输入以后会自动跳出相关的包的版本号的!

    使用说明:

    临时使用:
    pip install -i https://mirrors.ustc.edu.cn/pypi/web/simple package
    
    升级pip到最新版本后进行配置:
    # 使用本镜像站来升级 pip
    pip install -i https://mirrors.ustc.edu.cn/pypi/web/simple pip -U
    pip config set global.index-url https://mirrors.ustc.edu.cn/pypi/web/simple

    镜像选择:(可以更换)

    豆瓣

    http://pypi.douban.com/simple

    阿里云(推荐使用)

    http://mirrors.aliyun.com/pypi/simple/

    中国科学技术大学

    http://pypi.mirrors.ustc.edu.cn/simple/

    清华大学

    https://pypi.tuna.tsinghua.edu.cn/simple

     


    二、通过.whl文件使用pip下载

    树莓派4b:四核1.5GHz,Cortex A72架构(ARM v8 64位架构)Python3.7的环境

    实例:比如下载numpy 1.19.1

    先去PyPI网站下载对应的numpy对应于树莓派4b版本的whl文件 ------- > PyPI网站

    找到文件下载的页面:

    则需要找到对应的.whl文件:含有aarch64的(AArch64是ARMv8的一种执行状态)下载到对应的目录里面

    然后,在命令行中输入:

    #假如我的文件位置在/home/pi/Download/
    pip install /home/pi/Download/numpy-1.19.1-cp37-cp37m-manylinux2014_aarch64.whl

    但是这个方式有缺点:很多第三方库没有ARMv8架构对应的.whl,所以下错了whl文件是无法进行下载第三方库的,会出现platform error!比如opencv的3.4的版本就没有,连python3.7版本有些都没有!


    三、通过pycharm下载管理使用第三方库

    这个具体的方法就不说了,一般都可以下载,另外换源也可以,方法参考PyCharm中关于安装第三方包的问题,给你三个建议。中的第一个方法。

     

    网上收集的资料的来源:

    csdn:PyCharm中关于安装第三方包的问题,给你三个建议。

    码迷:国内pypi镜像

    USTC Mirror HelpPyPI 镜像源使用帮助

    最后在尝试下载opencv的时候,走过了很多的坑,网上有很多教程是说去github中下载opencv的源文件,然后编译

    比如这篇:树莓派4B 安装opencv完整教程基于python3(各种错误解决)等等类似教程

    但是这个问题贼多!!!通过本文的第一种方法可以直接解决!!!

     

     

     

     

     

    展开全文
  • 易知大学任务(2)成绩表雷达分析图概述Numpy 最基本的库,是用于处理含有同种元素的多维数组运算的第三方库—科学计算包,python数据分析及科学计算的基础库,几乎支撑所有其他库—支持N维数组运算、处理大型矩阵、...

    易知大学任务(2)成绩表雷达分析图

    概述

    Numpy 最基本的库,是用于处理含有同种元素的多维数组运算的第三方库

    —科学计算包,python数据分析及科学计算的基础库,几乎支撑所有其他库

    —支持N维数组运算、处理大型矩阵、成熟的广播函数库、矢量运算、线性代数、傅里叶变换、随机数生成等功能

    —可与C++/Fortran语言无缝结合。树莓派Python v3默认安装已经包含了numpy。

    本笔记包含以下内容

    一、导入模块 二、生成数组 三、运算函数 四、数组与数值的运算

    五、数组与数组的运算 六、转置 七、点积/内积 八、数组元素访问

    九、数组支持函数运算 十、改变数组大小 十一、切片操作 十二、布尔运算

    十三、取整运算 十四、广播 十五、分段函数 十六、计算唯一值以及出现次数

    十七、矩阵运算 十八、矩阵不同维度上的计算

    一、导入模块

    >>> import numpy as np

    二、生成数组

    1966867-20200506171750704-616306266.png

    >>> np.array([1, 2, 3, 4, 5]) # 把列表转换为数组

    array([1, 2, 3, 4, 5])

    >>> np.array((1, 2, 3, 4, 5)) # 把元组转换成数组

    array([1, 2, 3, 4, 5])

    >>> np.array(range(5)) # 把range对象转换成数组

    array([0, 1, 2, 3, 4])

    >>> np.array([[1, 2, 3], [4, 5, 6]]) # 二维数组

    array([[1, 2, 3],

    [4, 5, 6]])

    >>> np.arange(8) # 类似于内置函数range()

    array([0, 1, 2, 3, 4, 5, 6, 7])

    >>> np.arange(1, 10, 2)

    array([1, 3, 5, 7, 9])

    >>> np.linspace(0, 10, 11) # 等差数组,包含11个数

    array([ 0., 1., 2., 3., 4., 5., 6., 7., 8., 9., 10.])

    >>> np.linspace(0, 10, 11, endpoint=False) # 不包含终点

    array([ 0. , 0.90909091, 1.81818182, 2.72727273, 3.63636364,

    4.54545455, 5.45454545, 6.36363636, 7.27272727, 8.18181818,

    9.09090909])

    >>> np.logspace(0, 100, 10) # 对数数组

    array([ 1.00000000e+000, 1.29154967e+011, 1.66810054e+022,

    2.15443469e+033, 2.78255940e+044, 3.59381366e+055,

    4.64158883e+066, 5.99484250e+077, 7.74263683e+088,

    1.00000000e+100])

    >>> np.logspace(1,6,5, base=2) # 对数数组,相当于2 ** np.linspace(1,6,5)

    array([ 2. , 4.75682846, 11.3137085 , 26.90868529, 64. ])

    >>> np.zeros(3) # 全0一维数组

    array([ 0., 0., 0.])

    >>> np.ones(3) # 全1一维数组

    array([ 1., 1., 1.])

    >>> np.zeros((3,3)) # 全0二维数组,3行3列

    [[ 0. 0. 0.]

    [ 0. 0. 0.]

    [ 0. 0. 0.]]

    >>> np.zeros((3,1)) # 全0二维数组,3行1列

    array([[ 0.],

    [ 0.],

    [ 0.]])

    >>> np.zeros((1,3)) # 全0二维数组,1行3列

    array([[ 0., 0., 0.]])

    >>> np.ones((1,3)) # 全1二维数组

    array([[ 1., 1., 1.]])

    >>> np.ones((3,3)) # 全1二维数组

    array([[ 1., 1., 1.],

    [ 1., 1., 1.],

    [ 1., 1., 1.]])

    >>> np.identity(3) # 单位矩阵

    array([[ 1., 0., 0.],

    [ 0., 1., 0.],

    [ 0., 0., 1.]])

    >>> np.identity(2)

    array([[ 1., 0.],

    [ 0., 1.]])

    >>> np.empty((3,3)) # 空数组,只申请空间而不初始化,元素值是不确定的

    array([[ 0., 0., 0.],

    [ 0., 0., 0.],

    [ 0., 0., 0.]])

    三、运算函数

    (1)算术运算函数

    1966867-20200506171824002-1499436518.png

    (2)比较运算函数

    1966867-20200506171842403-1738947708.png

    (3)其他运算函数

    1966867-20200506171856583-298555109.png

    四、数组与数值的运算

    >>> x = np.array((1, 2, 3, 4, 5)) # 创建数组对象

    >>> x

    array([1, 2, 3, 4, 5])

    >>> x * 2 # 数组与数值相乘,返回新数组

    array([ 2, 4, 6, 8, 10])

    >>> x / 2 # 数组与数值相除

    array([ 0.5, 1. , 1.5, 2. , 2.5])

    >>> x // 2 # 数组与数值整除

    array([0, 1, 1, 2, 2], dtype=int32)

    >>> x ** 3 # 幂运算

    array([1, 8, 27, 64, 125], dtype=int32)

    >>> x + 2 # 数组与数值相加

    array([3, 4, 5, 6, 7])

    >>> x % 3 # 余数

    array([1, 2, 0, 1, 2], dtype=int32)

    >>> 2 ** x

    array([2, 4, 8, 16, 32], dtype=int32)

    >>> 2 / x

    array([2. ,1. ,0.66666667, 0.5, 0.4])

    >>> 63 // x

    array([63, 31, 21, 15, 12], dtype=int32)

    五、数组与数组的运算

    >>> a = np.array((1, 2, 3))

    >>> b = np.array(([1, 2, 3], [4, 5, 6], [7, 8, 9]))

    >>> c = a * b # 数组与数组相乘

    >>> c # a中的每个元素乘以b中的对应列元素

    array([[ 1, 4, 9],

    [ 4, 10, 18],

    [ 7, 16, 27]])

    >>> c / b #np.devide(,) # 数组之间的除法运算

    array([[ 1., 2., 3.],

    [ 1., 2., 3.],

    [ 1., 2., 3.]])

    >>> c / a

    array([[ 1., 2., 3.],

    [ 4., 5., 6.],

    [ 7., 8., 9.]])

    >>> a + a #np.add(,) # 数组之间的加法运算

    array([2, 4, 6])

    >>> a * a # 数组之间的乘法运算

    array([1, 4, 9])

    >>> a - a # 数组之间的减法运算

    array([0, 0, 0])

    >>> a / a # 数组之间的除法运算

    array([ 1., 1., 1.])

    六、转置

    >>> b = np.array(([1, 2, 3], [4, 5, 6], [7, 8, 9]))

    >>> b

    array([[1, 2, 3],

    [4, 5, 6],

    [7, 8, 9]])

    >>> b.T # 转置

    array([[1, 4, 7],

    [2, 5, 8],

    [3, 6, 9]])

    >>> a = np.array((1, 2, 3, 4))

    >>> a

    array([1, 2, 3, 4])

    >>> a.T # 一维数组转置以后和原来是一样的

    array([1, 2, 3, 4])

    七、点积/内积

    >>> a = np.array((5, 6, 7))

    >>> b = np.array((6, 6, 6))

    >>> a.dot(b) # 向量内积

    108

    >>> np.dot(a,b)

    108

    >>> c = np.array(([1,2,3],[4,5,6],[7,8,9])) # 二维数组

    >>> c.dot(a) # 二维数组的每行与一维向量计算内积

    array([ 38, 92, 146])

    >>> a.dot(c) # 一维向量与二维向量的每列计算内积

    array([78, 96, 114])

    八、数组元素访问

    >>> b = np.array(([1,2,3],[4,5,6],[7,8,9]))

    >>> b

    array([[1, 2, 3],

    [4, 5, 6],

    [7, 8, 9]])

    >>> b[0] # 第0行

    array([1, 2, 3])

    >>> b[0][0] # 第0行第0列的元素值

    1

    >>> b[0,2] # 第0行第2列的元素值

    3

    >>> b[[0,1]] # 第0行和第1行

    array([[1, 2, 3],

    [4, 5, 6]])

    >>> b[[0,1], [1,2]] #第0行第1列的元素和第1行第2列的元素

    array([2, 6])

    >>> x = np.arange(0,100,10,dtype=np.floating)

    >>> x

    array([ 0., 10., 20., 30., 40., 50., 60., 70., 80., 90.])

    >>> x[[1, 3, 5]] # 同时访问多个位置上的元素

    array([ 10., 30., 50.])

    >>> x[[1, 3, 5]] = 3 # 把多个位置上的元素改为相同的值

    >>> x

    array([ 0., 3., 20., 3., 40., 3., 60., 70., 80., 90.])

    >>> x[[1, 3, 5]] = [34, 45, 56] # 把多个位置上的元素改为不同的值

    >>> x

    array([ 0., 34., 20., 45., 40., 56., 60., 70., 80., 90.])

    九、数组支持函数运算

    >>> x = np.arange(0, 100, 10, dtype=np.floating)

    >>> np.sin(x) # 一维数组中所有元素求正弦值

    array([ 0. , -0.54402111, 0.91294525, -0.98803162, 0.74511316,

    -0.26237485, -0.30481062, 0.77389068, -0.99388865, 0.89399666])

    >>> b = np.array(([1, 2, 3], [4, 5, 6], [7, 8, 9]))

    >>> np.cos(b) # 二维数组中所有元素求余弦值

    array([[ 0.54030231, -0.41614684, -0.9899925 ],

    [-0.65364362, 0.28366219, 0.96017029],

    [ 0.75390225, -0.14550003, -0.91113026]])

    >>> np.round(_) # 四舍五入

    array([[ 1., -0., -1.],

    [-1., 0., 1.],

    [ 1., -0., -1.]])

    >>> x = np.random.rand(10) * 10 # 包含10个随机数的数组

    >>> x

    array([ 2.16124573, 2.58272611, 6.18827437, 5.21282916, 4.06596404,

    3.34858432, 5.60654631, 9.49699461, 1.68564166, 2.9930861 ])

    >>> np.floor(x) # 所有元素向下取整

    array([ 2., 2., 6., 5., 4., 3., 5., 9., 1., 2.])

    >>> np.ceil(x) # 所有元素向上取整

    array([ 3., 3., 7., 6., 5., 4., 6., 10., 2., 3.])

    十、改变数组大小

    >>> a = np.arange(1, 11, 1)

    >>> a

    array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])

    >>> a.shape = 2, 5 # 改为2行5列

    >>> a

    array([[ 1, 2, 3, 4, 5],

    [ 6, 7, 8, 9, 10]])

    >>> a.shape = 5, -1 # -1表示自动计算,原地修改

    >>> a

    array([[ 1, 2],

    [ 3, 4],

    [ 5, 6],

    [ 7, 8],

    [ 9, 10]])

    >>> b = a.reshape(2,5) # reshape()方法返回新数组

    >>> b

    array([[ 1, 2, 3, 4, 5],

    [ 6, 7, 8, 9, 10]])

    十一、切片操作

    >>> a = np.arange(10)

    >>> a

    array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

    >>> a[::-1] # 反向切片

    array([9, 8, 7, 6, 5, 4, 3, 2, 1, 0])

    >>> a[::2] # 隔一个取一个元素

    array([0, 2, 4, 6, 8])

    >>> a[:5] # 前5个元素

    array([0, 1, 2, 3, 4])

    >>> c = np.arange(25) # 创建数组

    >>> c.shape = 5,5 # 修改数组大小

    >>> c

    array([[ 0, 1, 2, 3, 4],

    [ 5, 6, 7, 8, 9],

    [10, 11, 12, 13, 14],

    [15, 16, 17, 18, 19],

    [20, 21, 22, 23, 24]])

    >>> c[0, 2:5] # 第0行中下标[2,5)之间的元素值

    array([2, 3, 4])

    >>> c[1] # 第0行所有元素

    array([5, 6, 7, 8, 9])

    >>> c[2:5, 2:5] # 行下标和列下标都介于[2,5)之间的元素值

    array([[12, 13, 14],

    [17, 18, 19],

    [22, 23, 24]])

    十二、布尔运算

    >>> x = np.random.rand(10) # 包含10个随机数的数组

    >>> x

    array([ 0.56707504, 0.07527513, 0.0149213 , 0.49157657, 0.75404095,

    0.40330683, 0.90158037, 0.36465894, 0.37620859, 0.62250594])

    >>> x > 0.5 # 比较数组中每个元素值是否大于0.5

    array([ True, False, False, False, True, False, True, False, False, True], dtype=bool)

    >>> x[x>0.5] # 获取数组中大于0.5的元素,可用于检测和过滤异常值

    array([ 0.56707504, 0.75404095, 0.90158037, 0.62250594])

    >>> x < 0.5

    array([False, True, True, True, False, True, False, True, True, False], dtype=bool)

    >>> np.all(x<1) # 测试是否全部元素都小于1

    True

    >>> np.any([1,2,3,4]) # 是否存在等价于True的元素

    True

    >>> np.any([0])

    False

    >>> a = np.array([1, 2, 3])

    >>> b = np.array([3, 2, 1])

    >>> a > b # 两个数组中对应位置上的元素比较

    array([False, False, True], dtype=bool)

    >>> a[a>b]

    array([3])

    >>> a == b

    array([False, True, False], dtype=bool)

    >>> a[a==b]

    array([2])

    十三、取整运算

    >>> x = np.random.rand(10)*50 # 10个随机数

    >>> x

    array([ 43.85639765, 30.47354735, 43.68965984, 38.92963767,

    9.20056878, 21.34765863, 4.61037809, 17.99941701,

    19.70232038, 30.05059154])

    >>> np.int64(x) # 取整

    array([43, 30, 43, 38, 9, 21, 4, 17, 19, 30], dtype=int64)

    >>> np.int32(x)

    array([43, 30, 43, 38, 9, 21, 4, 17, 19, 30])

    >>> np.int16(x)

    array([43, 30, 43, 38, 9, 21, 4, 17, 19, 30], dtype=int16)

    >>> np.int8(x)

    array([43, 30, 43, 38, 9, 21, 4, 17, 19, 30], dtype=int8)

    十四、广播

    >>> a = np.arange(0,60,10).reshape(-1,1) # 列向量

    >>> b = np.arange(0,6) # 行向量

    >>> a

    array([[ 0],

    [10],

    [20],

    [30],

    [40],

    [50]])

    >>> b

    array([0, 1, 2, 3, 4, 5])

    >>> a[0] + b # 数组与标量的加法

    array([0, 1, 2, 3, 4, 5])

    >>> a[1] + b

    array([10, 11, 12, 13, 14, 15])

    >>> a + b # 广播

    array([[ 0, 1, 2, 3, 4, 5],

    [10, 11, 12, 13, 14, 15],

    [20, 21, 22, 23, 24, 25],

    [30, 31, 32, 33, 34, 35],

    [40, 41, 42, 43, 44, 45],

    [50, 51, 52, 53, 54, 55]])

    >>> a * b

    array([[ 0, 0, 0, 0, 0, 0],

    [ 0, 10, 20, 30, 40, 50],

    [ 0, 20, 40, 60, 80, 100],

    [ 0, 30, 60, 90, 120, 150],

    [ 0, 40, 80, 120, 160, 200],

    [ 0, 50, 100, 150, 200, 250]])

    十五、分段函数

    >>> x = np.random.randint(0, 10, size=(1,10))

    >>> x

    array([[0, 4, 3, 3, 8, 4, 7, 3, 1, 7]])

    >>> np.where(x<5, 0, 1) # 小于5的元素值对应0,其他对应1

    array([[0, 0, 0, 0, 1, 0, 1, 0, 0, 1]])

    >>> np.piecewise(x, [x<4, x>7], [lambda x:x*2, lambda x:x*3])

    # 小于4的元素乘以2

    # 大于7的元素乘以3

    # 其他元素变为0

    array([[ 0, 0, 6, 6, 24, 0, 0, 6, 2, 0]])

    十六、计算唯一值以及出现次数

    >>> x = np.random.randint(0, 10, 7)

    >>> x

    array([8, 7, 7, 5, 3, 8, 0])

    >>> np.bincount(x) # 元素出现次数,0出现1次,

    # 1、2没出现,3出现1次,以此类推

    array([1, 0, 0, 1, 0, 1, 0, 2, 2], dtype=int64)

    >>> np.sum(_) # 所有元素出现次数之和等于数组长度

    7

    >>> np.unique(x) # 返回唯一元素值

    array([0, 3, 5, 7, 8])

    十七、矩阵运算

    >>> a_list = [3, 5, 7]

    >>> a_mat = np.matrix(a_list) # 创建矩阵

    >>> a_mat

    matrix([[3, 5, 7]])

    >>> a_mat.T # 矩阵转置

    matrix([[3],

    [5],

    [7]])

    >>> a_mat.shape # 矩阵形状

    (1, 3)

    >>> a_mat.size # 元素个数

    3

    >>> a_mat.mean() # 元素平均值

    5.0

    >>> a_mat.sum() # 所有元素之和

    15

    >>> a_mat.max() # 最大值

    7

    >>> a_mat.max(axis=1) # 横向最大值

    matrix([[7]])

    >>> a_mat.max(axis=0) # 纵向最大值

    matrix([[3, 5, 7]])

    >>> b_mat = np.matrix((1, 2, 3)) # 创建矩阵

    >>> b_mat

    matrix([[1, 2, 3]])

    >>> a_mat * b_mat.T # 矩阵相乘

    matrix([[34]])

    >>> c_mat = np.matrix([[1, 5, 3], [2, 9, 6]]) # 创建二维矩阵

    >>> c_mat

    matrix([[1, 5, 3],

    [2, 9, 6]])

    >>> c_mat.argsort(axis=0) # 纵向排序后的元素序号

    matrix([[0, 0, 0],

    [1, 1, 1]], dtype=int64)

    >>> c_mat.argsort(axis=1) # 横向排序后的元素序号

    matrix([[0, 2, 1],

    [0, 2, 1]], dtype=int64)

    >>> d_mat = np.matrix([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

    >>> d_mat.diagonal() # 矩阵对角线元素

    matrix([[1, 5, 9]])

    十八、矩阵不同维度上的计算

    >>> x = np.matrix(np.arange(0,10).reshape(2,5)) # 二维矩阵

    >>> x

    matrix([[0, 1, 2, 3, 4],

    [5, 6, 7, 8, 9]])

    >>> x.sum() # 所有元素之和

    45

    >>> x.sum(axis=0) # 纵向求和

    matrix([[ 5, 7, 9, 11, 13]])

    >>> x.sum(axis=1) # 横向求和

    matrix([[10],

    [35]])

    >>> x.mean() # 平均值

    4.5

    >>> x.mean(axis=1)

    matrix([[ 2.],

    [ 7.]])

    >>> x.mean(axis=0)

    matrix([[ 2.5, 3.5, 4.5, 5.5, 6.5]])

    >>> x.max() # 所有元素最大值

    9

    >>> x.max(axis=0) # 纵向最大值

    matrix([[5, 6, 7, 8, 9]])

    >>> x.max(axis=1) # 横向最大值

    matrix([[4],

    [9]])

    >>> weight = [0.3, 0.7] # 权重

    >>> np.average(x, axis=0, weights=weight)

    matrix([[ 3.5, 4.5, 5.5, 6.5, 7.5]])

    >>> x = np.matrix(np.random.randint(0, 10, size=(3,3)))

    >>> x

    matrix([[3, 7, 4],

    [5, 1, 8],

    [2, 7, 0]])

    >>> x.std() # 标准差

    2.6851213274654606

    >>> x.std(axis=1) # 横向标准差

    matrix([[ 1.69967317],

    [ 2.86744176],

    [ 2.94392029]])

    >>> x.std(axis=0) # 纵向标准差

    matrix([[ 1.24721913, 2.82842712, 3.26598632]])

    >>> x.var(axis=0) # 纵向方差

    matrix([[ 1.55555556, 8. , 10.66666667]])

    展开全文
  • 1.下载libcurl安装包 ...4.安装库 4.1如果只在虚拟机中跑程序,则输入下列命令 ./configure --prefig=$PWD/_install 4.2如果只在树莓派中跑程序,则输入下列命令 ./configure --prefig=$PWD/_ins

    libcurl简介

    libcurl是一个跨平台的网络协议库,支持http, https, ftp, gopher, telnet, dict, file, 和ldap 协议。libcurl同样支持HTTPS证书授权,HTTP POST, HTTP PUT, FTP 上传, HTTP基本表单上传,代理,cookies,和用户认证。

    安装libcurl库的步骤

    1.下载libcurl库安装包
    https://github.com/curl/curl/releases/tag/curl-7_71_1
    2.拖进虚拟机中解压

    tar xvf curl-7.71.1.tar.gz 
    

    3.进入该目录

    cd curl-7.71.1/
    

    4.安装库,该库不支持访问https

    1. 4.1如果只在虚拟机中跑程序,则输入下列命令
    ./configure --prefig=$PWD/_install
    
    1. 4.2如果只在树莓派中跑程序,则输入下列命令
    ./configure --prefig=$PWD/_install --host=arm-linux
    

    5.开始编译

    make
    

    6.开始安装

    make install
    

    什么是openSSL?
    OpenSSL是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用

    编译openssl支持libcurl的https访问

    http协议是明文传输的,因此很容易被截取和解析,泄漏个人数据。
    https协议是在http和tcp之间多添加了一层,进行身份验证和数据加密。

    配置支持https的libcurl库

     ./configure --prefix=$PWD/_install --with-ssl
    

    当你的本机没有ssl库时,会出现报错
    configure: error: --with-ssl was given but OpenSSL could not be detected

    这时候需要安装OpenSSL库解决这个问题

    wget http://www.openssl.org/source/openssl-1.1.1a.tar.gz
    

    解压

    tar -vxf openssl-1.0.0d.tar.gz
    

    配置

    cd openssl-1.1.1a/
    ./config 
    

    编译

    make //没报错就是编译成功
    

    安装

    sudo make install
    
    展开全文
  • 树莓派4b安装Python3的第三方库的一些想法 树莓派3B+ + 系统安装 + tensorflow1.9.0 + opencv3.4.0 树莓派4B换清华源并更换系统源(Raspbian-buster系统) 54树莓派VNC无法显示桌面 一、安装好镜像、vnc、putty...
  • 智能家居喂鱼系统(五)-树莓派C++

    千次阅读 2015-11-27 20:58:11
    因为之前讲的边缘探测是基于opencv这个开源的,代码都是用C++写的,所以再要去调用树莓派的python GPIO感觉就有点啰嗦了,所以直接用了第三方开发的树莓派C++-wiringPi这个是Drogon开发的,特别感谢他,...
  • 树莓派内核编译

    2021-05-09 14:38:12
    文章目录前言一、准备工作二、如何配置树莓派的Linux内核1、内核配置2、内核编译3、Linux内核镜像拷贝至树莓派三、验证 前言 本文为笔者学习过程中的笔记,...安装可能会需要使用的第三方库 sudo apt-get install bc
  • Paddle Lite在设计上对图优化模块和执行引擎实现了良好的解耦拆分,移动端可以直接部署执行阶段,无任何第三方依赖。 包含完整的80个 op+85个 Kernel 的动态,对于ARMV7只有800K,ARMV8下为1.3M,并可以通过裁剪...
  • (二) ROS中添加第三方库 (三) ROS rosrun 调用 sudo 命令 (1)将下载下来的bcm2835库进行安装: # 解压缩 $ tar xvzf bcm2835-1.35.tar.gz # 进入解压之后的目录 $ cd bcm2835-1.35 # ...
  • 树莓派3B 之uart通信

    2019-12-23 15:01:57
    对我们使用的第三方库就是wirningPi。 拿到的树莓派如何安装wirningPi库呢? ---等会写一个安装wirningPi库的教程? 由上图可以看出,我们使用的引脚是wirningPi的15/16脚分别作为Tx/Rx(当然也要...
  • 运用翔云平台的人脸识别的方案,通过使用第三方libcurl的,用HTTPS方式访问官网进行人脸识别的操作,并拿到人脸识别得到的结果; 实现目标 在demo1(链接)的基础上,使用树莓派摄像头(CSI接口)获取第二张照片...
  • 代码基于C++实现,不依赖第三方库。然而,目前开源的代码,是在windows vs上编译的,对于我们这帮mac/linux用户来说,用起来还是挺麻烦的。网上也有不少关于Linux的编译过程详解。然而针对嵌入式平台的移植依然少见...
  • raspberrypi环境配置前言步骤扩充内存换源安装python...不得不吐槽这些第三方库的兼容性是真差,版本问题一不小心就会不兼容,一定要注意安装的版本不要出错。后面的搭建步骤中有明确的版本标明。 步骤 扩充内存 输入命
  • 器材 笔记本电脑/台式机 树莓派(3b 或更新) 网线 兼容 Linux 的 Web 摄像头 注意 : 由于树莓派与电脑之间的通信会占用一条网线, 所以... 由于操作系统的特殊性, 很多第三方库/软件必须使用专为arm7编译的版本....
  • 树莓派做一个聊天机器人

    千次阅读 2019-08-03 19:26:39
    首先来安装所需要的第三方库: pip install pyttsx3 pip install requests pip install baidu-aip 然后来看第一步,录音,通过麦克风录入音频,文件保存在当前目录下,一个函数解决: def Sound_Recording(path) : ...
  • 大部分童鞋的树莓派是不是一直在吃灰呢?一直闲置着,倒不如用它做一个简易监控,如果检测到人脸后,就拍照上传...可参考视频:教程(三) 第三方库安装 2、推送消息部分。我用的是免费的企业微信推送,需要注册...
  • 丰富的第三方库,易于上手人工智能安装baidu-aip依据官方文档编程 百度云api 百度云控制台,产品:人工智能>人脸识别>立即使用>创建应用>勾选相应选项得到AppID/API Key/Secret Key ->python程序中...
  • 大噶好,我是Yhen 这篇文章带给大家的经验分享是树莓派+百度语音识别打造语音定时播报系统 文章目录一.项目目标二.前期准备三.获取树莓派的温度四.调用百度语音合成接口五....5.所需安装的Python第三方库(pip in
  • (9)安装GPIO

    千次阅读 2015-05-20 09:56:06
    树莓派内核中已经自带了GPIO的驱动,所以我们可以直接通过第三方写好的库函数来完成对GPIO接口的控制。 wringPi官网地址:http://wiringpi.com/ wringPi适合具有C语言基础,在解除树莓派之前已经接触过单片机...
  • 使用git方式安装Python第三方GUIkivy出现致命错误没有GLES2/gl2.h文件 问题出现环境 软件: Python3.7 Debian Booster 硬件: 树莓派4B 1GRAM 解决问题 安装libgles2-mesa-dev包 sudo apt-get install libgles...
  • 树莓使用pypy

    2019-01-21 21:34:18
    1.给PyPy安装相应的第三方库:PyPy是独立于系统自身的python环境的,不能使用系统自身已经安装的python第三方库。 pip 是一个python 包管理工具,我们就是通过它来安装第三方的包的,所以得首先安装pip。 下载...
  • 使用python的第三方库bluepy可以很方便的在linux主机如树莓派上进行蓝牙通信。 bluepy的安装 sudo apt-get install python-pip libglib2.0-devsudo pip install bluepy源码安装如下:$ sudo apt-get install git ...
  • 后面关于文本合成语音的部分,打算接入阿里、讯飞的api的,emmm有点贵,算了,使用第三方库讲究着用吧(ps:声音确实是好僵硬)! 准备 在这里,我们需要提前安装好requests库、pyttsx3库。 pip3 install requests ...
  • 我目前需要使用第三方c应用程序(../LSM303DLHC/LSM303)触发它。 有关使用此的注意事项 需要以root用户身份运行应用程序才能访问i2c总线 所需的 用于I2C总线通信的I2C工具 安装: : 文档: : 与该存储...
  • sundyCoder Android第三方贡献(https://github.com/sundyCoder) coleflowers php贡献(@coleflowers) Free&Easy 资源贡献 海豚嘎嘎 LBP cascade检测器训练 Windows工程端到端模型 ...

空空如也

空空如也

1 2
收藏数 25
精华内容 10
关键字:

树莓派安装第三方库