安卓树莓派的拍照

说到树莓派,不能忽略其小小的拍照功能,在谷歌官方的Demo中,有一个项目涉及到了拍照,具体实现是一个门铃的功能:

当“门铃”按下时,在门上方的“摄像头”会抓拍下站在门口的的人,并通过谷歌的云平台及其数据库发送到与树莓派相关联的安卓手机。从而完成整个步骤。


申请谷歌云端平台可以免费试用,但试用之前,需要填写一个有效的付款方式,国内的话需要VISA,或者其他外币卡

安卓树莓派的拍照_第1张图片
付款方式


安卓树莓派的拍照_第2张图片
谷歌云平台

有条件的小伙伴,可以尝试一下,注意读官方README文档,想要使用的话,还需折腾Firebase Console和谷歌云平台,下载相关json文档,导入App Key。在这里,我就不说了。


本次,我主要按照谷歌给的实例,带大家走一遍拍照的流程

先去GitHub上下载官方门铃拍照的小应用,或者用我这里给大家提供的一份

链接:http://pan.baidu.com/s/1dE2kjWP 密码:y55j

解压后,导入进Android stdio里,由于不同于普通安卓应用,需要下载相关类库,会有个update提示,点下就好。

安卓树莓派的拍照_第3张图片
导入Android stdio中

其中app是给树莓派的,companionApp是安装在安卓手机端。

直接点运行的话,会报错误,原因是没有从Firebase Console中下载相关json 的文件,假如仅仅想和我一样探究一眼树莓派的拍照功能的话,在下方Gradle里,注释掉外部引用。

安卓树莓派的拍照_第4张图片

删除CloudVisionUtils这java文件。并在res下,新建一个布局文件activity_main,加入一个ImageView。

安卓树莓派的拍照_第5张图片
ImageView

在DoorbellActivity中,关联相关布局

@Override

public voidonCreate(BundlesavedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

......

}

自己根据需求,找个合适的地方,在代码中创建ImageView

private  ImageViewimage;

image= (ImageView) findViewById(R.id.pinout_board);


安卓树莓派的拍照_第6张图片
获取到照片

原本这里是获取拍照,上传至谷歌云平台的地方,在这里小小的改动一下。

同安卓应用,在方法中,是不允许做更改界面的操作,所以,我这里使用Message,传递至Handler,在Handler中,将拍照的界面上传上去。


安卓树莓派的拍照_第7张图片
Handler方法,更新UI

如此,一个简易的小拍照程序就出来了,如需更改像素,在DoorbellCamera中,有IMAGE_WIDTH,IMAGE_HEIGHT两个参数可以修改。

想要拍照,将IO口的BCM21点接一下高电平,即可拍照一次


安卓树莓派的拍照_第8张图片
修改树莓派拍照像素

最后,将项目分享一下

链接:http://pan.baidu.com/s/1nvCZzvV 密码:xs17

你可能感兴趣的:(安卓树莓派的拍照)