发布时间:2026/7/9 18:18:46
图像识别案例在线实验闯关Educator头歌答案分享 第1关手写体图像数据集初识# -*- coding: utf-8 -*- #读取机器学习包sklearn内置的手写体图像数据集输出数据集的基本信息 #图像像素数据集的大小x_size(元组)第1个元素为行数第2个元素为列数 #图像标签向量y #返回 (x_size,y) def return_values(): import sklearn.datasets asklearn.datasets.load_digits() Xa.data #图像像素数据集 Ya.target #图像标签向量 x_size X.shape y Y return (x_size,y) #********** End **********#第2关基于全像素特征的手写体图像识别模型def return_values(): import sklearn.datasets asklearn.datasets.load_digits() #2 提取数据 Xa.data Ya.target #3 划分测试集和训练集 from sklearn.model_selection import train_test_split x_train,x_test,y_train,y_testtrain_test_split(X,Y,test_size0.2,random_state4) #4构建支持向量机模型 import sklearn.svm as svm from sklearn.svm import SVC clf svm.SVC(kernellinear) clf.fit(x_train,y_train) rvclf.score(x_train, y_train); y1clf.predict(x_test) ry1-y_test vlen(r[r0])/len(y1) return (rv,v) #********** End **********#第3关基于全像素特征的人脸识别模型# -*- coding: utf-8 -*- #读取机器学习包sklearn内置的人脸图像数据集 #按80%训练和20%测试进行随机划分构建支持向量机分类模型(线性核函数) #返回模型的准确率rv和测试集的预测准确率rs。 def return_values(): #1 读取数据集 import sklearn.datasets asklearn.datasets.fetch_olivetti_faces() #2 提取数据 Xa.data Ya.target from sklearn.decomposition import PCA pcaPCA(n_components0.95) pca.fit(X) X1pca.transform(X) from sklearn.model_selection import train_test_split x_train,x_test,y_train,y_testtrain_test_split(X1,Y,test_size0.2,random_state4) import sklearn.svm as svm from sklearn.svm import SVC clf svm.SVC(kernellinear) clf.fit(x_train,y_train) rvclf.score(x_train, y_train); y1clf.predict(x_test) ry1-y_test rslen(r[r0])/len(y1) return (rv,rs) #********** End **********#第4关基于像素主成分的人脸识别模型# -*- coding: utf-8 -*- #读取机器学习包sklearn内置的人脸图像数据集 #对像素特征数据做主成分分析并提取主成分要求累计贡献率在95以上。 #基于提取的主成分数据作为输入特征数据 #按80%训练和20%测试进行随机划分构建支持向量机分类模型(线性核函数) #返回模型的准确率rv和测试集的预测准确率rs。 from sklearn.decomposition import PCA #主成分分析模块 def return_values(): #1 读取数据集 import sklearn.datasets asklearn.datasets.fetch_olivetti_faces() #2 提取数据 Xa.data Ya.target from sklearn.decomposition import PCA pcaPCA(n_components0.95) pca.fit(X) X1pca.transform(X) from sklearn.model_selection import train_test_split x_train,x_test,y_train,y_testtrain_test_split(X1,Y,test_size0.2,random_state4) import sklearn.svm as svm from sklearn.svm import SVC clf svm.SVC(kernellinear) clf.fit(x_train,y_train) rvclf.score(x_train, y_train); y1clf.predict(x_test) ry1-y_test rslen(r[r0])/len(y1) return (rv,rs) #********** End **********#第5关彩色图像识别模型from PIL import Image import numpy as np import os def return_values(): path图片2/ # 纸币图像文件夹 fnameos.listdir(path) Xnp.zeros((len(fname),9)) # 预定义自变量9个颜色矩特征 Ynp.zeros(len(fname)) # 预定义因变量面额值 for i in range(len(fname)): imgImage.open(pathfname[i]) # 读取第i张图片 imimg.split() # 提取RGB通道并归一化截取中心100x100区域 Rnp.array(im[0])/255 row_1int(R.shape[0]/2)-50 row_2int(R.shape[0]/2)50 con_1int(R.shape[1]/2)-50 con_2int(R.shape[1]/2)50 RR[row_1:row_2,con_1:con_2] Gnp.array(im[1])/255 GG[row_1:row_2,con_1:con_2] Bnp.array(im[2])/255 BB[row_1:row_2,con_1:con_2] # 构造X计算三个通道的一阶、二阶、三阶颜色矩 # R通道 r1 np.mean(R) r2 np.std(R) a_r np.mean(np.abs(R - r1)**3) r3 a_r**(1./3) # G通道 g1 np.mean(G) g2 np.std(G) a_g np.mean(np.abs(G - g1)**3) g3 a_g**(1./3) # B通道 b1 np.mean(B) b2 np.std(B) a_b np.mean(np.abs(B - b1)**3) b3 a_b**(1./3) X[i, :] [r1, r2, r3, g1, g2, g3, b1, b2, b3] # 构造Y从文件名提取面额值 png_name fname[i] Y[i] float(png_name.split(_)[0]) # 划分训练集和测试集构建支持向量机模型 from sklearn.model_selection import train_test_split from sklearn.svm import SVC x_train, x_test, y_train, y_test train_test_split(X, Y, test_size0.2, random_state4) clf SVC(class_weightbalanced, random_state0) # 使用平衡类别权重 clf.fit(x_train, y_train) # 计算准确率 rv clf.score(x_train, y_train) # 训练集准确率 rs clf.score(x_test, y_test) # 测试集准确率 return (rv, rs)第6关彩色图像识别模型拓展 任务 现有1元、5元、10元、20元、50元、100元共6种面额的纸币彩色图像,储存在图片文件夹内相关信息及要求如下 1每种纸币均从正、反两面及两个不同的方向进行采集图像各10张即每种纸币采集40张6种货币则总图片有240张。 2图片的命名为面额值_采集序号.png比如1元纸币40张依次命名为1_1.png~1_40.png其他同理。 3读取图片文件夹计算每张图片的R、G、B三个颜色通道的一阶、二阶、三阶颜色矩特征共9个特征指标数据记为自变量X 4同时构造纸币面额标签数据集记为因变量Y。 5按80%训练和20%测试进行随机划分数据集构建支持向量机分类模型 6返回模型的准确率rv和测试集的预测准确率rs。 from PIL import Image import numpy as np import os def return_values(): import os path图片/ fnameos.listdir(path) Xnp.zeros((len(fname),9)) #预定义自变量即9个颜色矩阵特征指标 Ynp.zeros(len(fname)) #预定义因变量 for i in range(len(fname)): imgImage.open(pathfname[i]) #读取第i张图片 imimg.split() Rnp.array(im[0])/255 #R通道 row_1int(R.shape[0]/2)-50 row_2int(R.shape[0]/2)50 con_1int(R.shape[1]/2)-50 con_2int(R.shape[1]/2)50 RR[row_1:row_2,con_1:con_2] Gnp.array(im[1])/255 #G通道 GG[row_1:row_2,con_1:con_2] Bnp.array(im[2])/255 #B通道 BB[row_1:row_2,con_1:con_2] #构造X png_namefname[i] X[i]png_name.split(_)[0] #构造Y png_namefname[i] Y[i]png_name.split(_)[0] #建模及计算 from sklearn.model_selection import train_test_split x_train,x_test,y_train,y_testtrain_test_split(X,Y,test_size0.2,random_state4) import sklearn.svm as svm from sklearn.svm import SVC clf svm.SVC(kernellinear) clf.fit(x_train,y_train) rvclf.score(x_train, y_train); y1clf.predict(x_test) ry1-y_test rslen(r[r0])/len(y1) return (rv,rs)

相关新闻

2026/7/9 18:18:46

基于MA12070与PIC18F4610的高保真音频系统设计

1. 项目概述:基于MA12070与PIC18F4610的高保真音频系统设计在便携式音频设备和智能家居产品快速发展的今天,如何在小体积、低功耗的前提下实现高保真音频输出成为工程师面临的关键挑战。MA12070作为英飞凌推出的高效D类音频放大器IC,配合PIC1…

2026/7/9 18:18:46

Arco Print:为 Odoo 打造一套可交付的打印体系

引言在 Odoo 项目中,打印需求几乎无处不在。销售订单、采购订单、送货单、生产单、标签、装箱单、客户定制单据……这些单据看似只是“打印出来”,但在真实项目里,往往牵涉模板设计、数据组织、业务入口、纸张适配、打印机选择和后续维护。Ar…

2026/7/9 18:18:46

2026小红书视频图片无水印保存方法,安卓苹果通用教程

2026年小红书平台功能与风控规则持续更新,不少老旧的去水印、无水印保存方法已经失效。日常浏览小红书时,无论是自己发布的作品需要备份存档,还是收藏学习他人已授权的优质图文、视频素材,大家都希望获取干净无水印的原版内容。本…

2026/7/9 19:19:20

I2C/SPI/UART 通信协议对比:从 5 个维度解析嵌入式外设选型

I2C/SPI/UART通信协议深度对比:嵌入式外设选型实战指南引言:通信协议选择的工程挑战在STM32项目开发中,我曾遇到一个典型的通信选型难题:需要为一个工业传感器网络选择主控芯片与多个传感器之间的通信方案。系统要求同时连接8个环…

2026/7/9 19:19:20

【Agent智能体】44项目部署

章节四十四:项目部署 一、GPU模型部署(vLLMBGE) 1.1 部署目标 用2台Linux GPU服务器承载3个本地模型服务: BGE-M3和bge-reranker-large部署在同一台机器上Qwen3-8B通过vLLM部署在另一台机器上业务项目通过HTTP远程调用三个模型服务…

2026/7/9 19:19:20

Windows零代码接入Claude Code:WSL+winget+Node.js本地化实践

1. 项目概述:为什么“8分钱”能撬动Claude Code的本地化落地?最近在技术圈里刷到一条标题特别扎眼的消息:“零代码基础配置 Claude Code 成功,只花了8分钱”。一开始我以为是标题党——Claude Code作为Anthropic推出的、主打代码理…

2026/7/9 19:19:20

浏览器资源嗅探革命:重新定义网页内容获取方式

浏览器资源嗅探革命:重新定义网页内容获取方式 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 你是否曾为无法保存网页上的精彩视频而烦…

2026/7/9 19:14:20

如何高效使用GTA圣安地列斯存档编辑器:终极功能探索指南

如何高效使用GTA圣安地列斯存档编辑器:终极功能探索指南 【免费下载链接】gtasa-savegame-editor GUI tool to edit GTA San Andreas savegames. 项目地址: https://gitcode.com/gh_mirrors/gt/gtasa-savegame-editor 圣安地列斯存档编辑器是一款强大的开源工…

2026/7/9 1:39:10

国内大模型选型与企业级落地实战指南

我不能提供任何关于访问境外网络信息的技术方案或变通方法。根据中国法律法规和网络管理要求,所有互联网服务必须遵守国家关于网络安全、数据安全和内容安全的规定。ChatGPT及其后续版本(如所谓“GPT-5”)是由境外机构研发的大语言模型&#…

2026/7/9 1:25:56

三步实战方案:高效获取智慧教育平台电子课本PDF的完整流程

三步实战方案:高效获取智慧教育平台电子课本PDF的完整流程 【免费下载链接】tchMaterial-parser 国家中小学智慧教育平台 电子课本下载工具,帮助您从智慧教育平台中获取电子课本的 PDF 文件网址并进行下载,让您更方便地获取课本内容。 项目…

2026/7/9 0:37:00

高精度ADC与STM32L4在工业测量中的优化设计

1. 项目背景与核心器件选型在工业测量和精密仪器领域,模拟信号与数字系统的无缝衔接一直是设计难点。ADS1262作为TI推出的32位精密Δ-Σ ADC,其7nV RMS噪声和3ppm线性度指标,配合STM32L442KC的低功耗特性,构成了理想的信号链解决方…

2026/7/9 0:37:00

ADS1262与STM32F446ZE的高精度数据采集系统设计

1. 为什么需要弥合模拟与数字领域的鸿沟?在嵌入式系统开发中,模拟信号与数字信号的处理一直是个经典难题。我最近在一个工业传感器项目中,就深刻体会到了这种"跨界"处理的挑战。当时需要测量多路微伏级电压信号,同时还要…

2026/7/9 0:37:00

【SpringCloud Alibaba】Spring Boot + Spring Cloud 微服务面试核心20问

大家好,我是 CodeStats。一个在底层技术上“考古”了四年的硬核爱好者,也是 WWAIC(全周项目AI编程) 范式的提出者和实践者。我曾手写过一个完整的 Java Web 框架(从 IoC 容器到嵌入式 Tomcat,代码全开源&a…

2026/7/9 5:30:41

3个高效策略:快速掌握Axure中文界面配置

3个高效策略:快速掌握Axure中文界面配置 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的英文界面感…