python狗品种识别_kaggle之本地运行识别狗品种
在搭建了深度学习环境后,第一件事就是试试行不行,最简单的当然是使用已经训练好的模型拿来预测新样本了。这里我们使用kaggle上面训练好的狗狗品种预测模型进行使用说明。(后面有完整的数据和脚本,下载到本地即可运行。)
1.加载待预测图片
from os.path import join
image_dir = 'train/'
img_paths = [join(image_dir, filename) for filename in
['0246f44bb123ce3f91c939861eb97fb7.jpg',
'84728e78632c0910a69d33f82e62638c.jpg']]
这里选用了2张图片,保存在img_paths的list里面。
2.定义读取和预处理图片的函数
import numpy as np
from tensorflow.python.keras.applications.resnet50 import preprocess_input
from tensorflow.python.keras.preprocessing.image import load_img, img_to_array
image_size = 224
def read_and_prep_images(img_paths, img_height=image_size, img_width=image_size):##定义处理函数
imgs = [load_img(img_path, target_size=(img_height, img_width)) for img_path in img_paths]
img_array = np.array([img_to_array(img) for img in imgs])
return preprocess_input(img_array)
3.导入模型并预测
from tensorflow.python.keras.applications import ResNet50
my_model = ResNet50(weights='../resnet50/resnet50_weights_tf_dim_ordering_tf_kernels.h5')
test_data = read_and_prep_images(img_paths)
preds = my_model.predict(test_data)
4.查看并可视化预测结果
import sys
# Add directory holding utility functions to path to allow importing
sys.path.append('~/utils')
from decode_predictions import decode_predictions
from IPython.display import Image, display
most_likely_labels = decode_predictions(preds, top=3, class_list_path='../resnet50/imagenet_class_index.json')
for i, img_path in enumerate(img_paths):
display(Image(img_path))
print(most_likely_labels[i])
[('n02097209', 'standard_schnauzer', 0.56502265), ('n02097047', 'miniature_schnauzer', 0.31319875), ('n02097130', 'giant_schnauzer', 0.045194548)]
[('n02092339', 'Weimaraner', 0.99767154), ('n02099849', 'Chesapeake_Bay_retriever', 0.001392837), ('n02109047', 'Great_Dane', 0.00032280287)]
可以看到,结果已经跑出来了,而且跟kaggle云端的运行结果一致。由于官方api下载速度非常慢还经常挂掉,而且文件路径等问题需要处理细节挺多。
为方便新手在本地服务器上测试运行,我这里把数据下载好并将自己测试运行的脚本打包到百度网盘了,大家直接下载使用便是。
数据下载地址:
使用方法
1.解压到当前文件夹,运行jupyter notebook
2.打开dog_breed目录
3.加载目录下的run_model.ipynb运行便可
python狗品种识别_kaggle之本地运行识别狗品种相关推荐
- 宠物识别api接口全开放:狗脸识别、猫脸识别、鼻纹识别、品种识别、相似度比对、图片质量检测
依据宠物识别的各类应用场景,悦保科技全面升级宠物AI识别的API接口服务,为用户提供更全面.更具针对性的接口选择,满足宠物身份建档.品种信息鉴别.个体身份比对等需求,推动宠物产业链的智能化升级. 宠物 ...
- VScode配置CMD本地运行环境(2.0)
VScode配置CMD本地运行环境(2.0) 官方Task.json说明 完整的Task.json配置信息 Task.json预定义变量 看了很多网上的教程都说需要下载VScode的python插件, ...
- 阿里云OCR通用文字识别和自定义模板OCR识别Python代码及一站式教程
阿里云OCR 一.通用文字识别 1.开通 2.PY3代码 3.测试结果 二.自定义模板识别 1.开通 2.进行自定义模板 3.代码 三.最后 一.通用文字识别 1.开通 开通链接:https://ma ...
- python实现验证码识别_python实现图文验证码识别
一,验证码类别 以下为网站常见的验证码: 1.图片验证码:常见的为英文.数字.汉字,计算题等类型的验证码. 2.行为式验证码: 常见的有滑动拼图,文字点选,图标点选,推理拼图等类型的验证码. 3.手机 ...
- python 百度人脸 sdk,树莓派调用百度人脸识别API实现人脸识别
前言 树莓派配置OpenCV,配置起来有点繁琐且耗时,但是调用百度智能云的人脸识别API来进行人脸识别是一个快速的解决方案 一.申请AppID.API Key和Secret Key 1.1创建应用 在 ...
- Django源码分析2:本地运行runserver分析
django源码分析 本文环境python3.5.2,django1.10.x系列1.根据上一篇文章分析了,django-admin startproject与startapp的分析流程后,根据dja ...
- 开发函数计算的正确姿势 —— 使用 Fun Local 本地运行与调试
前言 首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传.函数计算 ...
- python 替换array中的值_利用Python提取视频中的字幕(文字识别)
我的CSDN博客id:qq_39783601,昵称是糖潮丽子~辣丽 从今天开始我会陆续将数据分析师相关的知识点分享在这里,包括Python.机器学习.数据库等等. 今天来分享一个Python小项目! ...
- python程序写完后点哪个运行快_让 Python 代码运行更快的最佳方式!
PyPy与CPython PyPy是Python解释器CPython的直接替代品.CPython将Python编译为中间字节码然后由虚拟机解释,而PyPy使用实时(JIT)编译将Python代码转换为 ...
最新文章
- JAVA多线程Thread VS Runnable详解
- ASP.NET MVC 生成简单的 xml 权限结构
- 导出数据库API接口文档
- Only tensors or tuples of tensors can be output from traced functions
- HTML按钮中写事件,html 常用button事件
- 网络编程学习笔记(tcp_connect函数)
- kaptcha配置java_kaptcha 配置
- Linux下配置静态IP地址,设置DNS和主机名
- LINUX doubango编译中prefix参数无效
- 基于 RT-Thread Studio的CPK-RA6M4 开发环境搭建指南
- 鼠标钩子WH_MOUSE_LL
- RESULT:0x80029C4A (TYPE_E_CANTLOADLIBRARY))
- 自学编程/如何自学编程//自学C语言/如何自学C语言//自学java/如何自学java?
- Copycat CNN: Stealing Knowledge by Persuading Confession with Random Non-Labeled Data阅读心得
- 微信公众号支付(二)
- Qgis 如何根据范围来裁剪地图,高程图等
- TypeError: ufunc ‘isinf‘ not supported for the input types, and the inputs could not be safely...
- Error while bringing up minion for multi-master.
- MyBatis02:CRUD操作和配置解析
- js根据文字(保存大小,字体)计算文字长度,并根据容器显示省略号