路见不平 ! 基于tensorlfow快速迭代的户型图分类功能

前言

        在工作之余,发现合作的同事需要手动筛选户型图,存在一些老旧或无家具的户型图。这启发我们通过机器学习的模型预测来辅助校验,进而优化筛选流程。当前本期目标为6万个,后续也会有数据需要筛选,已经筛选出一部分数据 可以进行模型训练,但时间紧任务重,需要快速迭代出模型,提高筛选效率。      

1. 总目标

        实现高效的户型图识别系统,具体包括:

        • 构建分类模型,提高户型图筛选效率;

        • 提供人机交互界面,以便人工校验,并支持数据导出功能。

2. 模型构建部分

  2.1 问题理解与目标确定

        任务描述:对户型图进行自动分类,以解决以下问题:

        • 无家具户型图

        • 老旧户型图

        • 存在孤立单字的户型图(例如,“客”、“厨”等单字独立出现的情况)

        数据规模:初始数据包含6万张户型图。

  2.2 数据收集与整理

        数据来源:从已分类的数据中批量读取无家具和老旧户型图的图像,这些类别特征明显,易于建模。

        数据整理步骤

        1. 数据清理:确保图像文件完好,格式统一;

        2. 去重处理:清除重复图像,保证训练数据的唯一性;

        3. 标签定义:根据分类需求添加标签,例如无家具、老旧、空间单字等。

        预期结果:得到干净、无重复、已带标签的图像数据集。

  2.3 数据预处理

        图像预处理步骤

        1. 调整图像尺寸为统一大小(例如224x224像素);

        2. 考虑灰度化或色彩标准化,以减少特征维度或统一色彩信息;

        3. 通过随机旋转、缩放、翻转等操作增强数据多样性,提高模型的泛化能力。

        预期结果:获得适用于模型训练的标准化图像数据集。

 2.4 模型选择与设计

        模型选择

• 使用预训练的卷积神经网络(CNN),比如本次使用的MobileNetV2,借助迁移学习进行模型优化。冻结特征提取层,重点训练分类层,以提高效率。

        模型架构

        • 输入层:接收预处理后的图像;

        • 卷积与池化层:进行特征提取与降维;

        • 全连接与输出层:完成分类决策。

        预期结果:形成适用于户型图分类的高效模型架构。

  2.5 模型训练与评估

        训练步骤

        1. 将数据集按比例划分为训练集、验证集和测试集(70%/15%/15%);

        2. 设定批量大小、学习率和优化器等超参数;

        3. 使用验证集监控训练过程,防止过拟合;

        4. 进行超参数调优,以优化模型性能。

        评估指标:准确率、精确率、召回率、F1分数等,通过测试集评估模型的泛化能力。

        预期结果:获得表现良好的分类模型,其测试准确率达99.12%。

  2.6 模型优化与调优

        错误分析:针对错误分类样本分析原因,调整模型以改善其在特定类别上的表现,例如增加该类别数据量或进行数据增强。

        改进措施:考虑更复杂的模型架构,或采用集成学习方法提升分类精度和稳定性。

        测试成功率达 99.12%

得到了用户反馈

再得到新校验的户型图数据后 能够更加准确

2.7 模型部署

部署方式:

   本次在本地批量运行模型 后续将部署到服务器上,或者部署在端侧。

预期结果: 模型成功部署并能高效处理户型图的分类任务。

2.8 模型维护与更新

持续学习: 随着新的数据不断加入,模型需要定期重新训练或微调,以适应数据分布的变化。

性能监控: 监控模型在实际使用中的表现,确保分类效果保持稳定。

总结

10月末产生此次训练此次模型的想法 经过不断打磨训练出个还不错的模型。这整个流程从数据收集、预处理、模型选择与训练,到最终部署和维护,构成了一个完整的户型图分类系统的开发流程。通过此流程,你可以有效解决户型图中的无家具、老户型问题,并在6万张图像数据上建立高效的分类模型。

3.户型图标识界面

背景

        在原始的标识模型界面并不能迭代且不能适配此次智能推断的情况下,临时周一11月4号决定开发前端标识程序,并于11月6号能够流畅使用。

覆盖现有实现的功能

  • 读取文件并展示列表数据

  • 标识图片及支持多选

  • 导出标识结果

拓展优化功能

  • 由exe windows程序改为web网页(由flutter开发), 能够及时迭代部署、跨端使用、不需要特定设备,后续也可以及时支持端侧。

  • 分页分列表预加载 (提高加载速度)

  • 能够展示预测问题分类并表示 (用红框标识)

  • 有预测问题分类的图片时,免标识。如图 自动带入住宅无家具 用户点击提交即可。 (通过此类交互去肯定的方式点击 新增 由此可以减少用户复杂度,而不是将 预测问题分类列 复制到 问题类型列去让用户去否定,增加用户复杂度)

用户反馈

总结

   重新开发了现有的图片分类程序,并成功引入了可以不断迭代的户型图分类模型介入其中,当然还有自动化等优化空间。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/465842.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

字符串接龙 /单词接龙 (BFs C#

卡码网 110和 力扣127 和LCq 108题都是一个解法 这两道题乍一看在结果处可能不一样 力扣要求 字符串里边必须包含对应的最后一个字符 而110不需要最后一个字符 但是在实验逻辑上是一致的 只是110需要把如果在set中找不到最后一个字符就直接返回0的逻辑删去 就可以了 这就是…

STM32之看门狗

STM32有独立看门狗(IWDG)和窗口看门狗(WWDG)。 采用窗口看门狗(WWDG),有一个死前中断,可以用来作一个报警的功能。 独立看门狗超时时间计算公式 假设LSI是32KHz,超时时间等于 预分频系数(4&…

平安科技(外包)面试分享

前言: 这是成都这边的平安科技面试分享,上家公司是做海外的,好不容易逮到公司离职赔偿的机会,我就离职了,没想到过了国庆节之后,工作是那么的难找,大概投了1-2周简历(外包和短期项目…

Python 在PDF中绘制形状(线条、矩形、椭圆形等)

在PDF中绘制图形可以增强文档的视觉效果。通过添加不同类型的形状,如实线、虚线、矩形、圆形等,可以使文档更加生动有趣,提高读者的阅读兴趣。这对于制作报告、演示文稿或是教材特别有用。本文将通过以下几个示例介绍如何使用Python 在PDF中绘…

2-2.STM32之定时器TIM---输入捕获--实验2( PWMI模式测频率占空比)

输入捕获模式测频率、PWMI模式测频率占空比-CSDN博客 参考这篇文章! 来利用一个GPIO的定时器的两个通道进行捕获占空比和频率,看出可以看出。TI1FP1和TI2FP2,计数值分别在CCR1和CCR2中取, 测周法 IC.c #include "stm32f1…

2024年转行指南:大学生进军就业前景广阔的领域——人工智能大模型

据教育部数据统计,2024高校毕业生规模预计达1179万人,将再创历史新高,“就业难”仍是当前大学毕业生需要直面的问题。在此背景下,选择一个就业前景好的专业尤为重要。 究竟学什么样的专业好就业呢?给毕业生们推荐3个当…

suanfabiji

1 差分练习 1 模板题 代码实现: import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);int n sc.nextInt();int m sc.nextInt();int num sc.nextInt();long[][] arr new long[n 2][m 2…

WPS单元格重复值提示设置

选中要检查的所有的单元格 设置提示效果 当出现单元格值重复时,重复的单元格就会自动变化 要修改或删除,点击

一.Linux文件基本属性

前言:Linux系统是一个多用户系统,不同的用户处于不同的地位,也就是说具有不同的权限。为了安全,对于不同用户访问同一个文件,设置不同权限是很有必要的。 一.文件的基本属性理解 在Linux中,通常是这两个命…

【学习记录】使用CARLA录制双目摄像头SLAM数据

一、数据录制 数据录制的部分参考了网上的部分代码,代码本身并不复杂,基本都是简单的CARLA语法,关键的一点在于,CARLA内部本身并没有预设的双目摄像头,需要我们添加两个朝向相同的摄像头来组成双目系统,这…

算法的基础知识

算法的定义 算法是为了解决某类问题而规定的一个有限长的操作序列。 算法的特性 1. 有穷性(Finiteness) 含义:一个算法必须总是在执行有穷步后结束,且每一步都必须在有穷时间内完成。重要性:确保算法能够在合理的时…

城镇保障性住房管理:SpringBoot技术应用

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统,它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等,非常…

【ComfyUI】flux人像摄影风格迁移的最优解?这个效果应该暂时无敌了吧?效果不好你打我!

大家好,这期我们主要讨论如何使用stable diffusion comfyUI 制作基于flux的人像摄影,主要实现风格迁移的功能。 我们都知道flux的生态目前不太完善,flux的controlnet和flux ipadapter虽然有,但效果不太好,可控性不强。…

基于微信的追星小程序+ssm(lw+演示+源码+运行)

摘 要 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,追星小程序被用户普遍使用,为方便用户能够可以…

esp32cam+Arduino IDE在编译时提示找不到 esp_camera.h 的解决办法

多半是因为你的ESP32库升级了,不再是 1.02版本,或者根本就没有 ESp32 库。如果被升级了,还原为1.02版本就可以了。如果没有,按照下述方法添加: 首先,在"文件"->"首选项"->"…

基于物联网设计的地下煤矿安全监测与预警

文章目录 一、前言1.1 项目介绍【1】项目开发背景【2】设计实现的功能【3】项目硬件模块组成 1.2 设计思路1.3 系统功能总结1.4 开发工具的选择【1】设备端开发【2】上位机开发 1.5 模块的技术详情介绍【1】NBIOT-BC26模块【2】MQ5传感器【4】DHT11传感器【5】红外热释电人体检…

第8章 利用CSS制作导航菜单作业

1.利用CSS技术&#xff0c;结合链接和列表&#xff0c;设计并实现“山水之间”页面。 浏览效果如下&#xff1a; HTML代码如下&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8" /><title>山水之间</title><…

32单片机HAL库的引脚初始化

在使用HAL库时&#xff0c;GPIO初始化函数定义在stm32f4xx_hal_gpio.c文件中&#xff0c;如下&#xff1a; void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init); 由这个函数可以看出&#xff0c;在初始化GPIO时&#xff0c;需要向函数传入2个结构体&…

Django安装

在终端创建django项目 1.查看自己的python版本 输入对应自己本机python的版本&#xff0c;列如我的是3.11.8 先再全局安装django依赖包 2.在控制窗口输入安装命令&#xff1a; pip3.11 install django 看到Successflully 说明我们就安装成功了 python的Scripts文件用于存…

网络层5——IPV6

目录 一、IPv6 vs IPv4 1、对IPv6主要变化 2、IPv4 vs IPv6 二、IPv6基本首部 1、版本——4位 2、通信量类——8位 3、流标号——20位 4、有效载荷长度——16位 5、下一个首部——8位 6、跳数限制——8位 7、源 、 目的地址——128位 8、扩展首部 三、IPv6地址 1…