标签

树莓派

Python 2018-01-24

使用树莓派和OpenCV 实现家庭监控和移动目标探测

本篇文章主要是分享使用opencv和树莓派实现的移动目标探测,所以需要有opencv环境,另外你的电脑必须有摄像头支持。 具体参考自伯乐在线的 这篇文章 具体内容大家可以参考下原文,我在其基础上大概修改了下,下面是代码:

import datetime
import time
import cv2
import logging
import imutils
import os

lastSaveTime = datetime.datetime.now()
motionCounter = 0
path = os.path.split(os.path.realpath(__file__))[0]
avg = None
cap = None
i = 0
logfilename = path + '/logger.log'
logging.basicConfig(filename=logfilename, level=logging.INFO)
while (1):

    timestamp = datetime.datetime.now()
    if timestamp.hour >= 18 or timestamp.hour <= 9:
        logging.info('time:' + str(timestamp.hour))
        time.sle...
Linux 2018-01-22

mysql修改root密码或者host后无法登陆解决办法

今天在树莓派上安装了mysql之后,发现无论输入密码是否正确,都会报错误:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

在网上找了好久的解决办法,终于成功了,过程如下:

首先将my.ini中在[mysqld]节点上加

skip-grant-tables //主要作用是:跳过表中的验证,可以无密码登陆。

保存并重启mysql 然后直接终端使用mysql命令登录之后查询plugin字段值:

mysql> use mysql;
mysql> select plugin from user where user = 'root';

执行结果plugin字段为空。

更新plugin字段为mysql默认值:

mysql> update user set plugin='mysql_native_password';

更新成功,继续执行更新密码操作:

mysql> update user set authentication_string=password('123456') where user='root' and host='localhost';

刷新权限:

mysql> flush privileges;

将my.ini中的

sk...
Python 2018-01-01

使用python和opencv实现简单的网络摄像头

这个网络摄像头需要一个客户端和服务端,客户端使用opencv捕捉摄像头,通过socket将图片流传输到服务端,服务端接受图片流,使用HTTPServer渲染生成一个简单的网页,将图片流用mjpeg的方式传输到浏览器中,这样就可以直接用浏览器来查看摄像头视频了。主要的实现方式就是这样的,下面详细介绍下.

安装依赖

首先需要在客户端安装opencv,安装方式可以Google下,这里就不再赘述了,服务端需要安装pillownumpy这两个模块。

实现代码

首先是客户端的代码:

import io
import socket
import struct
import time
import datetime
import cv2

client_socket = socket.socket()
client_socket.connect(('服务端ip地址或域名', 8002))

connection = client_socket.makefile('wb')
try:
    #打开摄像头
    cap = cv2.VideoCapture(0)
    while (1):
        #读取图片
        ret, frame = cap.read()
        # cv2.imshow("capture", frame)
        if cv2....
Linux 2017-07-16

树莓派配置安装opencv

OpenCV全称:Open Source Computer Vision Library,是一个开源的跨平台计算机视觉库,OpecCV主要用c++语言编写,也提供了python等其他语言的,下面介绍下如何在树莓派上如何安装OpenCV以及OpenCV的Python调用库。

更新系统及安装依赖:

更新树莓派:

sudo apt-get update
sudo apt-get upgrade

安装依赖

安装编译等基本的依赖项:

sudo apt-get install build-essential cmake pkg-config

安装和图像相关的库:

sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev

安装基本的IO库:

sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev

安装highgui相关的依赖库:

sudo apt-get install libgtk2.0-dev

安装opencv进阶依赖库,操作矩阵等:

sudo apt-get install li...
Linux 2017-07-14

树莓派搭建AirPlay服务实现WiFi无线音响外放

升级系统:

sudo apt-get update
sudo apt-get upgrade

通常情况下树莓派的音频输出使用的是HDMI接口,我们需要下面的命令将其变更为普通音频输出口

sudo amixer cset numid=3 1

安装系统所必需的软件包:

sudo apt-get install git libao-dev libssl-dev
sudo apt-get install libcrypt-openssl-rsa-perl libio-socket-inet6-perl
sudo apt-get install libwww-perl avahi-utils libmodule-build-perl

安装Perl Net-SDP协议软件:

cd ~
git clone https://github.com/njh/perl-net-sdp.git --depth=1 perl-net-sdp
cd perl-net-sdp
perl Build.PL
sudo ./Build
sudo ./Build test
sudo ./Build install

使用Shairport将树莓派设置为AirPlay接收器:

cd ~
git clone https://github.com/hendrikw82/shairport....
Linux 2017-07-13

在树莓派上搭建TimeMachine

安装软件

首先更新系统:

sudo apt-get update
sudo apt-get upgrade

执行如下命令,使得raspbian支持hfs+分区。

sudo apt-get install hfsplus hfsutils hfsprogs

支持ntfs

sudo apt-get install ntfs-3g

安装配置netatalk服务

sudo apt-get install netatalk

安装Avahi

sudo apt-get install avahi-daemon libnss-mdns

配置

创建挂载目录

sudo mkdir -p /var/nsa/disk/TimeMachine/
sudo chown -R pi:pi /var/nsa/disk/TimeMachine/

挂载硬盘

列出所有块设备

sudo blkid

输出类似下图: diskinfo
TYPE="hfsplus"就是我们的TimeMachine的硬盘。
挂载:

sudo mount -U 3eab1fc9-0235-39d5-9ed1-dce6f91f81f3 -t hfsplus -o force,rw /var/nsa/disk/TimeMachine/

配置netatalk服务

/etc/netatalk/AppleVolumes.defaul...

发现更多