基于Android的智能化拍照姿势推荐软件

2020-08-25 02:03水莲梅玲何帆
河南科技 2020年20期
关键词:深度学习

水莲 梅玲 何帆

摘 要:本文提出并开发基于Android的智能化拍照软件“美姿”APP,研究专业摄影图像并进行分类,采用卷积神经网络构建专业拍照姿势数据集,实现了基于用户历史偏好的标签化姿势推荐与构图推荐。

关键词:姿势推荐;深度学习;Android相机

中图分类号:TG659文献标识码:A文章编号:1003-5168(2020)20-0048-03

Abstract: This paper proposed and developed an Android-based intelligent photography software "Meizi" APP, studied and classified professional photographic images, used convolutional neural networks to construct professional photographic pose data sets, and realized tagging pose recommendation and composition recommendation based on users' historical preferences.

Keywords: posture recommendation;deep learning;Android camera

智能手机是目前最流行的拍照设备,其摄像头像素越来越高,功能越发强大,人们更加青睐使用手机完成个人摄影。但是,很多用户拍照时存在不会摆姿势的问题,以至于拍出的照片视觉效果不好。很多手机拍照软件提供了滤镜、贴纸、美颜等功能来解决照片美化问题,但拍照姿势的不足是后期难以修正的,严重影响照片质量[1]。

通过用户调研与分析,笔者发现,一个较好的姿势推荐APP应该满足如下需求:首先,由于姿势库中姿势种类是复杂繁多的,其应具备自动更新并为用户推荐受欢迎的姿势模板的功能;其次,姿势界面展示应该是直观的、分类清晰的,用户能够便捷地选择和使用模板;另外,由于照片姿势选择是高度主观的,为用户提供的模板应考虑个性化的姿势偏好。“美姿”APP能源源不断地为用户提供较为专业的、受欢迎的、多元的、高质量的拍照姿势,帮用户解决拍照姿势匮乏等问题。

1 系统方案设计

1.1 总体架构

本文提出的“美姿”APP总体架构设计如图1所示。前期通过对大量人物摄影图片的姿势特点和照片构图特点相关摄影文献的研究,总结出人物摄影最常用的六种姿势和适用于不同场景的构图类型。通过Python爬取图片,调用卷积神经网络分类模型自动对图片进行分类,利用OpenPose绘制人体姿势线条的流程,定期更新姿势数据集,为用户提供更丰富的拍照姿势。“美姿”APP通过构图与拍照姿势的标签分类、镜头识别拍摄人物、记录用户历史偏好等功能,实现为用户推荐受欢迎的、适宜的、分类清晰的拍照姿势和符合用户个性化倾向的姿势模板[2-3]。

1.2 姿势分类

不同的场景适合不同的拍照姿势。对人物拍照姿势进行归类且分析不同姿势摆拍的特点,可以帮助用户提高拍照效率。为方便用户查找适用于不同人数、不同种类的姿势,“美姿”APP中的姿势采用分级分类设置。姿势的类别分为两级,第一级根据人物数量进行分类,分为单人、双人和多人;第二级根据姿势进行分类,分为站姿、坐姿、走姿、躺姿、趴姿和跳姿。用户通过选择一级和二级类别,将得到不同人数的具体姿势模板。

1.3 构图分类

构图可以将照片中的人或景物加以强调、突出,提升画面的美感,增强照片的表现力。通过研究专业摄影构图,“美姿”APP为用户提供的构图分类有:首先按照摄影对象划分为人像、风景、建筑、美食四种,然后对每种构图进行细分。“美姿”APP还为用户提供了最常用的几种构图方式,包括对称、对角线、九宫格和水平构图。

1.4 基于卷积神经网络的人物图片分类

卷积神经网络是一种具有深度结构的前反馈神经网络,能够对数据进行有效分类的神经网络算法。基于卷积神经网络的算法有很多,人体姿势分类可借助卷积神经网络算法自动学习的能力,实现图像中人体姿势的特征提取。

本文基于AlexNet卷积神经网络,该卷积神经网络结构如图2所示。AlexNet有8层网络结构,由5个卷积层和3个全连接层组成。其中,每一个卷积层都包含ReLU激活函数,加速网络的收敛速度,第一、二卷积层还包含归一化LRN,增加模型的泛化能力,第一、二、五卷积层后都跟有池化层(最大池化层),第三、四卷积层后未跟池化层。后三层全连接层将二维特征向量压缩成一维向量,其中,第六、七全连接层包含ReLU激活函数,解决梯度消失的问题,同时包含Droupout正则化,避免模型过拟合,第八层全连接层用来分类。

采用上述卷积神经网络对图片进行特征提取,通过自己构建的数据集训练模型。本文卷积网络输入的图像大小为224×224的RGB彩色图像,卷积操作采用11×11、5×5、3×3大小的卷积核,步长为4和1,卷积操作后用ReLU激活函数得到卷积层的输出。池化层均采用3×3的最大池化,步长设置为2,然后接3个全连接层,结合SoftMax分类函数对图片进行分类。

1.5 姿势推荐

APP的結构流程如图3所示。服务器端自动获取构图与姿势资源库中的图片信息并存入数据库,当用户进入APP时,APP自动获取数据库中的构图与姿势模板信息和存储在本地历史偏好文件中的用户偏好与历史模板数据。根据用户偏好过滤构图与姿势模板信息,以标签化构图姿势模板、实时姿势推荐的方式展示给用户;根据模板的使用次数过滤历史模板数据,以历史偏好展示给用户,用户可根据个人喜好进行选择。用户每次拍照完毕后,APP自动存储此次拍照的构图与姿势使用情况,并自动更新服务器端数据库中的模板使用次数。用户可根据个人喜好对照片添加滤镜。当用户退出拍照时,用户的手机内部存储中以文件的方式存储此次的构图与姿势数据,并更新用户历史偏好。

2 基于Androd的APP系统开发实现

“美姿”APP的实现综合运用网络数据爬取、计算机图形图像处理、机器学习等技术,构建拍照姿势数据集,解决拍照姿势图像识别、人物拍照姿势自动学习及分类等问题,为智能化拍照姿势推荐APP提供资源库基础。在APP的研发中,通过获取服务器端资源库信息,结合Android自定义相机、Palette库、GPUImage图像处理库等技术,实现基于用户历史偏好的姿势推荐、构图推荐及滤镜添加等功能。“美姿”APP包含以下功能:标签化选择模板、实时姿势推荐、历史偏好展示、滤镜添加。

2.1 标签化选择模板功能

标签化选择的标签信息存储在Android端,待用户每次访问标签化模板时,通过与来自服务器端数据库的信息进行匹配,得到不同类别的姿势和构图。标签化展示模板是通过TabLayout、Fragment和ViewPager组件实现,用户点击不同的标签可查询不同种类的构图与姿势,滑动模板图片可切换模板,点击即可使用该模板。

2.2 实时姿势推荐功能

实时姿势推荐是通过Android相机人脸识别技术,实时检测人脸数量,获得结果后与数据库信息进行匹配,从而给用户推荐数据库中适合该人数的、较受欢迎的模板并展示在拍摄界面以供参考。姿势将以横向可滑动的缩略图展示,用户点击可预览模板。实时姿势推荐的效果图如图4所示。

2.3 历史偏好展示

用户的历史偏好保存在本地文件中,通过记录用户每次的构图与姿势使用情况,更新文件中的历史偏好和模板使用详情。当用户进入拍照界面时,自动从文件中读取历史偏好信息并根据用户选用的功能对模板数据进行筛选,展示在对应界面。界面为用户设置了历史选择模块,该模板汇总了历史模板信息,用户可直接查看历史选择并进行使用。

2.4 滤镜添加功能

APP提供了两种滤镜:GPUImage滤镜和Palette滤镜。GPUImage滤镜的作用是基于GPUImage图像处理库为静态图像添加滤镜,用户通过使用该滤镜可为照片添加如伽马射线、3×3卷积效果、叠加和白平衡等76种滤镜效果。Palette滤镜借助Palette库获取静态图片中画面的不同颜色,与原图叠加实现滤镜效果,滤镜添加的效果图如图5所示。

3 结论

本文对人像姿势和照片构图进行了分类研究,利用卷积神经网络实现了人物姿势图片的自动分类,并借助OpenPose对分类后的图片进行人体姿势线条描绘,最终得到拍照姿势数据集,姿势数据集和构图数据集共同组成了资源库。通过获取资源库图片信息,本设计成功搭建了服务器端数据库并实现了一款智能化姿势推荐APP,该APP具有基于用户历史偏好的姿势推荐、构图推荐及滤镜添加功能,可帮助用户拍出满意的高质量照片。

参考文献:

[1]張明,于佳弘,刘博,等.一种基于深度学习的拍摄构图方法和系统:中国,CN107705307A[P].2018-02-16.

[2]艾略特·西格尔.摄影师和模特的终极摆姿圣经[M].北京:人民邮电出版社,2015.

[3]陈星宏.基于3D骨架的肢体动作识别研究[D].成都:电子科技大学,2019.

猜你喜欢
深度学习
从合坐走向合学:浅议新学习模式的构建
面向大数据远程开放实验平台构建研究
基于自动智能分类器的图书馆乱架图书检测
搭建深度学习的三级阶梯
有体验的学习才是有意义的学习
电子商务中基于深度学习的虚假交易识别研究
利用网络技术促进学生深度学习的几大策略
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
深度学习算法应用于岩石图像处理的可行性研究