树莓派摄像头Camera的使用

树莓派摄像头Camera的使用

一、安装

1.硬件安装

2.打开Raspberry Pi配置工具开启Camera


二、 如何通过命令行控制摄像头模块

现在您的相机模块已连接且软件已启用,请尝试使用命令行工具raspistillraspivid

1.单击任务栏中的黑色监视器图标打开终端窗口:

打开终端

2.键入以下命令以拍摄静态图片并将其保存到桌面:

raspistill -o Desktop/image.jpg
raspistill命令进入终端

3.按Enter运行命令。

当命令运行时,您可以在拍摄静止图像之前看到相机预览打开五秒钟。

4.在桌面上查找图片文件图标,然后双击文件图标以打开图片。

桌面上的图像

通过添加不同的选项,您可以设置raspistill命令所采用的图像的大小和外观。

  • 例如,添加-h-w更改图像的高度和宽度:
raspistill -o Desktop/image-small.jpg -w 640 -h 480
  • 现在使用以下raspivid命令使用Camera Module录制视频:
raspivid -o Desktop/video.h264
  • 要播放视频文件,请双击video.h264桌面上的文件图标以在VLC Media Player中将其打开。

三、如何使用Python代码控制相机模块

Python picamera库允许您控制相机模块并创建出色的项目。

1.打开Python 3编辑器,例如Thonny Python IDE

打开Thonny

2. 打开一个新文件并将其另存为camera.py

注意: 永远不要将文件保存为picamera.py,这一点很重要。

3.输入以下代码:

from picamera import PiCamera
from time import sleep

camera = PiCamera()

camera.start_preview()
sleep(5)
camera.stop_preview()

4.* 保存并运行您的程序。相机预览应显示五秒钟,然后再次关闭。

图像预览

注意:只有将显示器连接到Raspberry Pi时,相机预览才有效。如果您使用远程访问(例如SSH或VNC),则不会“看到相机预览”。

5.如果您的预览是颠倒的,可以使用以下代码将其旋转180度:

camera = PiCamera()
camera.rotation = 180

您可以通过旋转图像90180270度。要重置图像,请设置rotation0度。

最好使预览稍微透视,以便在预览打开时查看程序中是否出现错误。

6.通过设置alpha级别使相机预览透视:

camera.start_preview(alpha=200)

alpha值可以是0255之间的任何数字。

四、用Python代码拍摄静态图片

现在使用相机模块和Python拍摄一些静态照片。

1.修改您的代码以添加camera.capture()一行:
camera.start_preview()
sleep(5)
camera.capture('/home/pi/Desktop/image.jpg')
camera.stop_preview()

注意:sleep在拍摄图像之前至少需要两秒钟,这一点非常重要,因为这样可以让相机的传感器有时间感应光线。
运行代码。
您应该看到相机预览打开五秒钟,然后应该拍摄静止图像。拍照时,您可以看到预览会短暂调整到不同的分辨率。
您的新图像应保存到桌面。

2.现在添加一个循环来连续拍摄五张照片:
camera.start_preview()
for i in range(5):
    sleep(5)
    camera.capture('/home/pi/Desktop/image%s.jpg' % i)
camera.stop_preview()

变量i计算多少次循环运行后,从0到4。因此,图像将保存为image0.jpg,image1.jpg等等。
再次运行代码并将摄像头模块固定到位。
相机应该每五秒拍一张照片。拍摄完第五张照片后,预览将关闭。
查看桌面以查找五张新图片。

五、使用Python代码录制视频

现在录制视频

1.修改您的代码以删除capture()并改为添加start_recording()和stop_recording()

您的代码现在应该如下所示:

camera.start_preview()
camera.start_recording('/home/pi/Desktop/video.h264')
sleep(5)
camera.stop_recording()
camera.stop_preview()

运行代码。
您的Raspberry Pi应该打开预览,录制5秒的视频,然后关闭预览。

六、如何更改图像设置和添加图像效果

Python picamera软件提供了许多效果和配置来改变图像的外观。
注意:某些设置仅影响预览而不影响捕获的图像,某些设置仅影响捕获的图像,而其他许多设置仅影响两者。

1.设置图像分辨率

您可以更改resolution相机模块拍摄的图像。
默认情况下,图像分辨率设置为显示器的分辨率。静态照片的最大分辨率为2592×1944,视频录制的最大分辨率为1920×1080。

  • 使用以下代码将resolution最大值设置为拍照。

注意:您还需要将帧速率设置15为启用此最大分辨率。

camera.resolution = (2592, 1944)
camera.framerate = 15
camera.start_preview()
sleep(5)
camera.capture('/home/pi/Desktop/max.jpg')
camera.stop_preview()

最低分辨率为64×64。

2.在图片中添加文字

您可以使用该命令向图像添加文本annotate_text

  • 运行此代码尝试:
camera.start_preview()
camera.annotate_text = "Hello world!"
sleep(5)
camera.capture('/home/pi/Desktop/text.jpg')
camera.stop_preview()
3.更改添加文本的外观
  • 使用以下代码设置文本大小:
camera.annotate_text_size = 50

您可以将文本大小设置为之间的任何东西6160。默认大小是32
也可以更改文本颜色。

  • 首先,添加Colorimport程序顶部的行:
from picamera import PiCamera, Color
  • 然后import在行下面修改你的其余代码,使它看起来像这样:
camera.start_preview()
camera.annotate_background = Color('blue')
camera.annotate_foreground = Color('yellow')
camera.annotate_text = " Hello world "
sleep(5)
camera.stop_preview()
4.更改预览的亮度

您可以更改预览显示的亮度。默认亮度为50,您可以将其设置为0和之间的任何值100

  • 运行以下代码试试这个:
camera.start_preview()
camera.brightness = 70
sleep(5)
camera.capture('/home/pi/Desktop/bright.jpg')
camera.stop_preview()
  • 以下循环调整亮度并添加文本以显示当前亮度级别:
camera.start_preview()
for i in range(100):
    camera.annotate_text = "Brightness: %s" % i
    camera.brightness = i
    sleep(0.1)
camera.stop_preview()
5.更改预览的对比度

与预览亮度类似,您可以更改预览的对比度。

  • 运行以下代码试试这个:
camera.start_preview()
for i in range(100):
    camera.annotate_text = "Contrast: %s" % i
    camera.contrast = i
    sleep(0.1)
camera.stop_preview()
6.添加炫酷的图像效果

您可以使用它camera.image_effect来应用特定的图像效果。

图像效果选项包括:

  • none
  • negative
  • solarize
  • sketch
  • denoise
  • emboss
  • oilpaint
  • hatch
  • gpen
  • pastel
  • watercolor
  • film
  • blur
  • saturation
  • colorswap
  • washedout
  • posterise
  • colorpoint
  • colorbalance
  • cartoon
  • deinterlace1
  • deinterlace2

默认效果是none

  • 选择图像效果并尝试一下:
camera.start_preview()
camera.image_effect = 'colorswap'
sleep(5)
camera.capture('/home/pi/Desktop/colorswap.jpg')
camera.stop_preview()
  • 运行此代码以循环所有图像效果camera.IMAGE_EFFECTS
camera.start_preview()
for effect in camera.IMAGE_EFFECTS:
    camera.image_effect = effect
    camera.annotate_text = "Effect: %s" % effect
    sleep(5)
camera.stop_preview()
效果
设置图像曝光模式

您可以使用camera.exposure_mode将曝光设置为特定模式。

曝光模式选项包括:

  • off
  • auto
  • night
  • nightpreview
  • backlight
  • spotlight
  • sports
  • snow
  • beach
  • verylong
  • fixedfps
  • antishake
  • fireworks

默认模式是auto

  • 选择曝光模式并试用:

    camera.start_preview()
    camera.exposure_mode = 'beach'
    sleep(5)
    camera.capture('/home/pi/Desktop/beach.jpg')
    camera.stop_preview()
    
  • 您可以camera.EXPOSURE_MODES像使用图像效果一样遍历所有曝光模式。

7.更改图像白平衡

您可以使用camera.awb_mode将自动白平衡设置为预设模式。

可用的自动白平衡模式为:

  • off
  • auto
  • sunlight
  • cloudy
  • shade
  • tungsten
  • fluorescent
  • incandescent
  • flash
  • horizon

默认是auto

  • 选择自动白平衡模式并尝试:
camera.start_preview()
camera.awb_mode = 'sunlight'
sleep(5)
camera.capture('/home/pi/Desktop/sunlight.jpg')
camera.stop_preview()
  • 您可以camera.AWB_MODES像使用图像效果一样循环所有自动白平衡模式。
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,560评论 4 361
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,104评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,297评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,869评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,275评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,563评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,833评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,543评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,245评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,512评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,011评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,359评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,006评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,062评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,825评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,590评论 2 273
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,501评论 2 268

推荐阅读更多精彩内容