bairui82 / dog_vs_cat

A project predicting dog or cat

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

猫狗大战

注意:请不要直接使用网上公开的代码

Dogs vs. Cats

AWS

由于此项目要求的计算量较大,建议使用亚马逊 p2.xlarge 云服务器来完成该项目,目前在弗吉尼亚北部有已经配置好了环境的 AMI 可以使用。参考:在aws上配置深度学习主机

描述

使用深度学习方法识别一张图片是猫还是狗。

  • 输入:一张彩色图片
  • 输出:是猫还是狗
  • 可选输出:猫狗面部坐标,猫狗身体mask

数据

此数据集可以从 kaggle 上下载。Dogs vs. Cats

此外还有一个数据集也非常好:The Oxford-IIIT Pet Dataset

建议

建议使用 OpenCV, tensorflow, Keras 完成该项目。其他的工具也可以尝试,比如 caffe, mxnet 等。

建议模型

如果你不知道如何去构建你的模型,可以尝试以下的模型,后面的数字代表年份和月份:

参考代码:deep learning models for keras

最低要求

本项目的最低要求是 kaggle public leaderboard 前10%。

应用(可选)(推荐)

应用形式多种多样,可以是在本地调用摄像头跑的程序,也可以网页的,也可以是 iOS APP 或 Android APP,甚至可以是微信公众号。

网页应用

推荐的工具:

微信公众号

可以参考这个例子:微信数字识别

网页接口部分可以参考 Flask 而不必用 python cgi。

iOS

在 iOS 平台上你可以使用 MetalPerformanceShaders 来实现卷积神经网络。推荐的语言:Swift。

这里有一个 Inception v3 在 iOS 上跑的例子。

OpenCV 的 iOS Framework 文件可以直接在这里下载:OpenCV releases。这里有一份教程,可以轻松入门:turorial_hello

最终效果可以参考这个 app :PetOrNot

PetOrNot

Android

在 Android 上运行 tensorflow 可以参考 android tensorflow

在 Android 上运行 OpenCV 可以参考 OpenCV4Android SDK

评估

你的项目会由优达学城项目评审师依照机器学习毕业项目要求来评审。请确定你已完整的读过了这个要求,并在提交前对照检查过了你的项目。提交项目必须满足所有要求中每一项才能算作项目通过。

提交

  • PDF 报告文件
  • 数据预处理代码(jupyter notebook)
  • 模型训练代码(jupyter notebook)
  • notebook 导出的 html 文件
  • 应用代码(可选)
  • 包含使用的库,机器硬件,机器操作系统,训练时间等数据的 README 文档(建议使用 Markdown )

About

A project predicting dog or cat