Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
人
人工智能系统实战第三期
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
liyinkai
人工智能系统实战第三期
Commits
b7de4372
Commit
b7de4372
authored
Sep 25, 2023
by
前钰
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Delete question.ipynb
parent
ed2b8a24
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
1 additions
and
75 deletions
+1
-75
question.ipynb
人工智能系统实战第三期/实战代码/K近邻车牌识别/question.ipynb
+1
-75
No files found.
人工智能系统实战第三期/实战代码/K近邻车牌识别/question.ipynb
deleted
100644 → 0
View file @
ed2b8a24
{
++ /dev/null
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 基于K-近邻的车牌号识别"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 一、案例简介\n",
"\n",
"图像的智能处理一直是人工智能领域广受关注的一类技术,在人工智能落地的进程中发挥着重要作用。其中车牌号识别作为一个早期应用场景,已经融入日常生活中,为我们提供了诸多便利,在各地的停车场和出入口都能看到它的身影。车牌号识别往往分为字符划分和字符识别两个子任务,本案例我们将关注字符识别的任务.\n",
"\n",
"## 二、作业说明\n",
"本次我们使用已经分割好的车牌图片作为数据集,包括数字 0-9、字母 A-Z(不包含 O 和 I)以及省份简称共 65 个类,编号从 0 到 64。数据已经分成了训练集和测试集,里面的文件夹用 label 编号命名,一个文件夹下的所有图片都属于该文件夹对应的类,每个图片都是 20 * 20 的二值化灰度图。尝试用 K-NN 的方法对分割好的字符图像进行自动识别和转化。 可以使用 sk-learn 等第三方库,不要求自己实现K-NN。\n",
"\n",
"### 基础任务(80分):\n",
"1. 数据预处理任务:将图片数据读入,标准化,将每个图像表示为一维向量,同时保留其对应的标签。这是进行模型训练之前的重要步骤。\n",
"\n",
"2. 模型训练任务:使用 sklearn库的KNeighborsClassifier类,构建K-NN模型,并对训练集进行训练。\n",
"\n",
"3. 模型评估任务:使用模型对测试集进行预测,然后计算模型的准确率。可以使用 sklearn库的accuracy_score函数来实现。\n",
"\n",
"4. 参数分析任务:探究当K值变化时,模型在测试集上的准确率如何变化。可以绘制一个图表,显示不同K值对应的准确率。\n",
"\n",
"5. 数据集大小影响任务:分析当训练集大小变化时,测试结果如何变化。可以尝试不同大小的训练集,记录并分析结果。\n",
"\n",
" \n",
"\n",
"### 扩展任务(20分):\n",
"1. 距离度量分析任务:分析在K-NN中使用不同的距离度量方式(如欧氏距离、曼哈顿距离等)对模型效果的影响。\n",
"\n",
"2. 方法对比任务:对比平权K-NN与加权K-NN的预测效果,分析不同权重设置对结果的影响。平权K-NN认为所有邻居的投票权重相同,而加权K-NN则根据距离远近来确定权重,更近的邻居有更大的投票权。\n",
"\n",
"3. 数据增强任务:考虑到车牌字符可能在不同的光照、角度和大小下出现,可以尝试进行数据增强,如旋转、缩放、剪切,亮度,对比度等操作,以提高模型的泛化能力。可调包(from PIL import Image,ImageEnhance )\n",
"\n",
"4. 数据均衡任务:如果数据集中的各类别样本数量不平衡,可能会对K-NN的性能产生影响。可以尝试使用过采样或者欠采样的方法,来使得各类别样本数量均衡。可调包(from imblearn.over_sampling import SMOTE )"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"tips:\n",
"\n",
"图片数据的特征之一是冗余性,即一张128x128的图片降维到64x64依然不影响识别,因为图像的像素矩阵中的某个像素值与周边的像素值的相关性很强,因此相差并不大。所以,可以考虑对图像数据进行降维来增加模型的训练速度和精度."
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3.8.5 64-bit (conda)",
"name": "python385jvsc74a57bd007efdcd4b820c98a756949507a4d29d7862823915ec7477944641bea022f4f62"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.5"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment