【Android】基于Google VR的远程图像传输

本文介绍了一个基于Android的VR远程图像传输项目,利用Google VR SDK和OkHttp框架,通过服务器端(Tomcat+Struts)进行图像传输。开发者在Android端创建应用,接收并显示VR照片,同时探讨了项目设备、开发平台和所用框架。
摘要由CSDN通过智能技术生成

夏季学期学校要求做个有关VR的远程图像传输的项目。刚好这几个星期学了点Android,能借这个项目测试一下我的能力。

一、设计功能
在Android APP上,按下“拍摄”按钮,一键完成“摄像头拍照+照片无线传输给手机+转化为VR照片”。
以下是效果图:
显示默认照片显示默认照片
显示摄像头照片显示摄像头照片

二、设计原理
在本项目中编写了两个程序,一个为Android APP,一个服务器端程序。电脑开启wifi热点,配置Tomcat+Struts框架搭建的本地服务器环境并开启本地服务器程序。手机连接热点,使两者处于同一个局域网中。外置USB摄像头连接PC,将拍摄数据传送给PC。服务器程序每时每刻抓取拍摄数据并自动转化成图片JPG格式保存在PC设立的本地服务器上。手机上的APP发送下载请求,本地服务器接收到下载请求后响应请求,将图片无线传输给手机。图片在Android APP上自动以VR模式展示。
结构图

三、项目设备
1.奥速X200 USB摄像头(这个摄像头是和老师借的。。就只是个普通QQ聊天用的摄像头,成像不太好,建议使用好一点的全景摄像头)
2.PC
3.Android 7.0以上版本的手机

四、开发平台
1.Android Studio,开发Android端
2.MyEclipse,开发服务器端

五、框架
Android端:

  1. Google VR SDK
    Google VR SDK是谷歌前几年推出的开发套件,其功能强大,可实现展示VR照片、播放VR视频、VR游戏等,支持DayDreamVR和其他通用型VR设备。其开发要求:
    1.Android Studio 2.3.3版本及以上
    2.Android SDK 7.1.1(API 25)版本及以上
    最低要求手机版本为Android4.4,但想体验完整功能需Android 7.0版本以上。
    Google VR SDK官网https://developers.google.com/vr/develop/android/get-started

  2. OkHttp
    OkHttp是一个处理网络请求的开源项目,是安卓端最火热的轻量级框架,由移动支付Square公司贡献。本项目采用OkHttp框架实现Android端与服务器端的通信。
    OkHttp Github网址:http://square.github.io/okhttp/

服务器端:

  1. Apache Tomcat
    Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。Tomcat 服务器是一个免费的开放源代码的Web 应用服务器。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。本项目使用Apache Tomcat v7.0版本。
    Apache Tomcat框架官网:http://tomcat.apache.org/

  2. Struts
    Struts2是一个Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。本项目使用Struts 2.3.34版本
    Struts官网:https://struts.apache.org/

  3. JavaCV
    JavaCV 是一款开源的视觉处理库,基于GPLv2协议,对各种常用计算机视觉库封装后的一组jar包,封装了OpenCV、libdc1394、OpenKinect、videoInput和ARToolKitPlus等计算机视觉编程人员常用库的接口。
    JavaCV通过其中的utility类方便的在包括Android在内的Java平台上调用这些接口。

六、代码思路

①Android端:
Android Studio中创建项目,在gradle中下载okHttp3框架和Google VR SDK:

implementation 'com.squareup.okhttp3:okhttp:3.11.0'
implementation 'com.google.vr:sdk-panowidget:1.170.0'

1.设计界面

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation=
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值