树莓派做图像处理_树莓派做实时图像处理 - CSDN
  • 2、插卡安装树莓派 3、进入linux系统更改root密码 sudo passwd root 4、开启ssh服务 树莓派登录raspi-config开启ssh服务 5、远程桌面: 在树莓派命令行下输入如下命令 安装tightvncserver sudo apt-get ...

    使用opencv对图像处理

    树莓派相关库安装:

    sudo apt-get update
    sudo apt-get install libjpeg-dev
    sudo apt-get install libatlas-base-dev
    sudo apt-get install libjpeg-dev
    sudo apt-get install libtiff5-dev
    sudo apt-get install libpng12-dev
    sudo apt-get install libqtgui4 libqt4-test
    sudo apt-get install libjasper-dev
    

    OpenCV模块pip安装

    sudo pip3 install opencv-python
    

    • 测试
    在终端输入 :python3
    然后 :import cv2
    如果安装成功,则import不会有问题
    下面就可以输出OpenCv的版本号
    使用 :print(cv2.version)
    退出python用: exit()

    import cv2
    import numpy as np
    
    cap = cv2.VideoCapture(0)
    while(1):
        # get a frame
        ret, frame = cap.read()
        # show a frame
        cv2.imshow("capture", frame)
           
        if cv2.waitKey(1) & 0xFF == ord('q'):
        #退出并拍照
            cv2.imwrite("takephoto2.jpg", frame)
            print("take Photo Ok")
            break
    cap.release()
    cv2.destroyAllWindows()
    

    树莓派实现·本地抓拍保存到picam里面

    展开全文
  • 图像的初步处理 彩色图片转灰度图 计算机对图片的处理,不同于生物的信息传递。 它的本质工作:对数据进行运算或处理 所以为了方便计算机处理,我们将图片进行简化(彩色图片转灰度) 引入numpy包 这里我用到了numpy...

    图像的初步处理

    彩色图片转灰度图

    计算机对图片的处理,不同于生物的信息传递。
    它的本质工作:对数据进行运算或处理
    所以为了方便计算机处理,我们将图片进行简化(彩色图片转灰度)

    引入numpy包

    这里我用到了numpy.copy()这一函数

    // copy原图片
    numpy.copy('test_image.jpg')
    

    转灰度图

    这里用到了opencv库中的cvtColor()函数

    // 函数相关参数
    目标图片名称 = cv2.cvtColor(src, code)
    

    这一函数用来实现图像进行色彩空间转换
    注意:opencv的色彩通道默认BGR
    第二个参数,设计转换的代码,网上有相关说明
    我们此处转换灰度用到的是

    cv2.cvtColor(lane_image, cv2.COLOR_RGB2GRAY)
    

    第一个参数lane_image就是我们前一步copy原图像所得到的数据,在它的基础上我进行了转灰度的操作

    完整代码

    #转灰度
    import cv2
    import numpy as np
    
    image = cv2.imread('test_image.jpg')
    lane_image = np.copy(image)
    gray = cv2.cvtColor(lane_image, cv2.COLOR_RGB2GRAY)
    cv2.imshow("result", gray)
    cv2.waitKey(0)
    

    图像降噪

    这组文档意义在于实现一个边缘检测
    在边缘检测中,降噪就相当于对图片,进行一个平滑处理
    使得尖锐的噪点不至于影响到边缘识别算法对图像边缘的判断
    (我对其他方面噪点的影响其实不是太了解,如果看到这篇文章的你们了解更多方面的话,也很希望能不吝赐教)

    高斯滤波

    cv2.GaussianBlur(gray, (5, 5), 0)
    

    如果单纯应用在这里用于图片处理,这行代码足矣
    至于其他滤波方式,和高斯滤波的差异,我在后续会补充
    如果有问题的地方,大家可以随时指出

    至滤波部分代码实现

    
    # 至滤波部分代码实现(降噪)
    import cv2
    import numpy as np
    
    image = cv2.imread('test_image.jpg')
    lane_image = np.copy(image)
    gray = cv2.cvtColor(lane_image, cv2.COLOR_RGB2GRAY)
    blur = cv2.GaussianBlur(gray, (5, 5), 0)
    cv2.imshow("result", blur)
    cv2.waitKey(0)
    展开全文
  • 树莓派,想要进行图像处理,但网上的很多教程都用opencv,opencv在树莓派上安装很麻烦,那怎样进行图像处理呢? 代码如下: from picamera.array import PiRGBArray from picamera import PiCamera import time #...

    用树莓派,想要进行图像处理,但网上的很多教程都用opencv,opencv在树莓派上安装很麻烦,那怎样进行图像处理呢?
    代码如下:

    from picamera.array import PiRGBArray
    from picamera import PiCamera
    import time
    
    # 下面几行初始化,设置一下参数
    camera = PiCamera()
    camera.resolution = (640, 480)
    camera.framerate = 32
    
    rawCapture = PiRGBArray(camera, size=(640,480))
    
    # 关键用capture_continuous()函数进行读取视频,然后 array 去除视频
    # image是numpy数组,就可以进行相关处理了
    
    for frame in camera.capture_continuous(rawCapture, format="bgr", use_video_port$
        image = frame.array
        print(image.shape)
        rawCapture.truncate(0)
    
    展开全文
  • 地方但是

    图像处理包:PIL、Pillow


    PIL: http://effbot.org/imagingbook/pil-index.htm

    Pillow: http://pillow.readthedocs.io/en/4.3.x/     (中文翻译)https://www.cnblogs.com/apexchu/p/4231041.html



    安装:

    sudo apt-get install python3-pil 

    sudo apt-get install python3-pillow


    展开全文
  • OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库...它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。

    1、树莓派上安装配置opencv
    我们从 opencv官网下载source文件,得到zip压缩包,这里推荐下载最新版本的Opencv,这里下载的是3.4.3版本,在安装前首先需要安装依赖包,在控制台输入:

    sudo apt-get install build-essential
    sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
    sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev\然后下载OpenCV3.2.0和OpenCV_contrib-3.2.0,下载需要等待一段时间
    

    之后输入:

    unzip opencv-3.4.3.zip #解压文件
    cd opencv-3.4.3 #进入文件夹
    mkdir build #创建编译文件夹
    cd build #进入
    camke .. 
    sudo make -j1
    

    -j 是使用多少线程进行编译,在Ubuntu虚拟机上由于我设设置的性能较好,可以使用-j8进行编译,也就是8线程,而在树莓派上则是使用的单线程编译,速度会慢很多,但是保证不会死机,一开始使用-j4时到99%时就死机了。如果-j后不加数字,则默认不限制线程编译

    在这里插入图片描述

    编译完成后输入:

    sudo make install #执行安装
    

    只要过一会就安装完成了。

    2、编写Opencv代码
    代码如下:

    #include <iostream>
    #include <opencv2/core/core.hpp> 
    #include <opencv2/highgui/highgui.hpp> 
    #include <opencv2/opencv.hpp> 
    using namespace std; 
    using namespace cv; 
    void fun2(Mat); 
    int main() 
    { 
    	Mat img = imread("orgin.png");//引入源图片文件 
    	if (img.empty()) 
    	{ 
    		return -1;//若没有图片文件,则为退出 
    	} 
    	fun2(img);//将源图片文件传入
    	fun2() namedWindow("orgin");//新建窗口 
    	imshow("orgin",img);//在orgin窗口下显示img 
    	namedWindow("new"); 
    	waitKey(0); 
    } 
    void fun2(Mat img) 
    { 
    	Mat element = getStructuringElement(MORPH_RECT, Size(15, 15));//图像处理的主要函数,函数的参数第一个为选择的样式,这里我选择的是MORPH_RECT样式,大小设置为15 
    	Mat dstimg; erode(img, dstimg, element);//将源文件进行处理,生成新的图像文件 
    	imshow("new", dstimg); 
    	imwrite("new.jpg", dstimg);//将处理后的新图像文件保存为new.jpg 
    }
    

    新建一个文件夹,之后将图像文件和cpp文件放入在同一文件夹内。

    3、运行代码
    在树莓派上运行Opencv的代码有点繁琐,首先需要安装cmake gui,使用图形界面会比较方便些,这里在终端直接输入:

    sudo apt-get cmake-gui
    

    进行安装。我们开始运行代码。在刚刚的文件夹里新建一个txt文件,这里推荐使用vim,当然也可以使用其他的文本编辑器,取名为CmakeLists.txt。CmakeLists的内容可以到Opencv的安装目录中找到Opencv官方的例子中直接复制过来就可以,不过需要改几个地方。

    # cmake needs this line
    cmake_minimum_required(VERSION 2.8)
    
    # Define project name
    project(opencv_example_project)
    
    # Find OpenCV, you may need to set OpenCV_DIR variable
    # to the absolute path to the directory containing OpenCVConfig.cmake file
    # via the command line or GUI
    find_package(OpenCV REQUIRED)
    
    # If the package has been found, several variables will
    # be set, you can find the full list with descriptions
    # in the OpenCVConfig.cmake file.
    # Print some message showing some of them
    message(STATUS "OpenCV library status:")
    message(STATUS "    version: ${OpenCV_VERSION}")
    message(STATUS "    libraries: ${OpenCV_LIBS}")
    message(STATUS "    include path: ${OpenCV_INCLUDE_DIRS}")
    
    if(CMAKE_VERSION VERSION_LESS "2.8.11")
      # Add OpenCV headers location to your include paths
      include_directories(${OpenCV_INCLUDE_DIRS})
    endif()
    
    # Declare the executable target built from your sources
    add_executable(opencv_example opencvtest.cpp)
    
    # Link your application with OpenCV libraries
    target_link_libraries(opencv_example ${OpenCV_LIBS})
    

    首先是为你的Opencv项目取名,当然如果不想改的话官方给的实例里已经给你取好了,其次就是将add_executable中的cpp文件改成自己写的代码的文件名,这样才可以知道编译的是哪个文件。

    接下来就是使用cmake-gui编译了。打开终端,输入:

    cmake-gui
    

    打开cmake-gui后看到界面,源代码处我们选择刚刚创建的文件夹,二进制文件一样也选择刚刚创建的文件夹,点击Add Entry,输入Opencv的安装位置,选择build文件夹,如图:
    在这里插入图片描述

    接着分别点击Configure和Generate,显示Configure Done和Generate Done就说明成功了。

    回到终端,cd进入刚刚的文件夹,输入:

    ls #查看生成的可执行文件的名称
    

    接着输入:

    ./opencv_example
    

    运行。运行结果如下:
    在这里插入图片描述
    个人博客:naohmurderer.tk(不定时分享小技术和音乐)

    展开全文
  • 一个基于树莓派的智能视频监控系统,能够实现动作捕捉,运动检测,后期还想实现机器学习模型训练,想知道树莓派的硬件支持这些吗?
  • 树莓派_图像处理入门纪实(一) 先声明一点,凡是以纪实为文章标题的博客都是在强调:我只是向老板/领导/老师/同事/同学证明,我确实干活了。等把纪实的任务完成,会整理出一篇总结,把纪实中涉及的内容,用类似于...
  • OpenCV简介:opencv是一个开源的计算机视觉库,是英特尔公司资助的两大图像处理利器之一。它为图像处理、模式识别、三维重建、物体跟踪、机器学习和线性代数提供了各种各样的算法。
  • 树莓派做图像处理数据延迟问题解决方法 很早之前(2018年左右)在一个当时风靡一时"跳一跳"小游戏的自动运行小工具时(树莓派通过摄像头获取手机屏幕图像,再驱动舵机云台去点击手机屏幕),就有发现树莓派做图像...
  • 树莓派-图像处理Python

    2020-04-05 14:26:09
    树莓派中进行图像处理-Python 代码: import cv2 #导入opencv库 import numpy as np #… #读取一张图片,地址不能带中文 ‘’’ 第二个参数,取值可为: cv2.IMREAD_COLOR:默认参数,读入一副彩色图片,忽略alpha...
  • 我们已经看到了相机在计算机、移动设备和汽车等日常生活设备中的迅速普及,但是机器视觉的最大进步莫过于处理能力。随着处理器的性能以每两年翻一番的速度不断提升,以及多核CPU和FPGA等并行处理技术日益受到关注,...
  • 树莓派基于python循环处理树莓派拍摄图像集代码,本设计旨在改善车道偏离预警系统的整体性与造价性,以树莓派作为图像处理平台,实现了车道线的检测以及偏离预警功能。软件方面算法分为道路图像预处理、车道线的检测...
  • 跟着网上的教程用树莓派装了opencv 然后也运行了一些简单的图像处理 识别分割啥的但是感觉效果都好差。。本科生想出去参加竞赛来着。机器人 拿树莓派做上位机再加上 跑opencv+cnn等等。。。 会不会arm根本忙不过来...
  • opencv识别赛道黑线
  • 使用Python和OpenCV实现树莓派/PC实时摄像头数据共享,主要分为服务器和客户端两部分。 服务器Demo如下: #服务器端 import socket import threading import struct import time import cv2 import numpy class...
  • 知道目标物体的坐标,根据目标物体的坐标。和目标车库的坐标。两个坐标位置进行判断。 根据小车要匀速行驶。根据小车移动的时间*速度来判断小车位置 小车先找到小铁块,吸上以后,将车头方向指向车库方向 ...
  • 树莓派安装系统 设置静态网络 更换镜像源 安装中文输入法 电脑控制树莓派 OpenCV3.4.1安装 1.树莓派安装系统 下载你所要的树莓派系统 https://www.raspberrypi.org/downloads/ RASPBIAN——&amp;amp;amp;amp...
  • 今天发现了wringpi这个库通过GPIO口来给电脑发送数据,感觉还挺方便的想知道更多关于wringpi的点这里想利用serial模块收发数据点这里我们继续通过ssh登录树莓派,串口通过转接模块连接电脑,将cmdline中改为:dwc_...
  • 笔者最早接触Matlab是从2012版开始,对于算法处理,目前个人觉得单从计算方面来说,Matlab很不错。下面进入正文。 1 硬软件基础 Matlab 2019a 树莓派 3B+(matalb的镜像并不支持4B,但是并不...
  • 听说可以使用 ROS 来实现树莓派控制 Pixhawk 无人机,这样可以不用修改飞控源码,而且可以用树莓派做图像处理。于是开始了一场浩浩荡荡的西行,可奈何刚翻过几座山,又越过几条河,妖魔鬼怪怎么这么多。不过一条总结...
1 2 3 4 5 ... 20
收藏数 2,742
精华内容 1,096
关键字:

树莓派做图像处理