IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> AI算法助力室内家具布局 -> 正文阅读

[Python知识库]AI算法助力室内家具布局

前言

?

今天就不给大家单纯介绍枯燥的算法啦,而是带大家一起看一个有意思的AI助力生活小idea:家具布局。

通过这篇paper也希望启发大家多打开脑洞,既然大家都学了算法,就可以更好的利用它根据自己的兴趣去干些事情,如果能有一些效果,那该是多开心啊~ ,哈哈~,另外里面还有一些常见的算法概念,可以顺便了解下~

论文链接:https://arxiv.org/pdf/2206.10608.pdf

ENCODING FURNITURE ARRANGEMENT FLOOR PLANS

既然要使用模型,所以第一步得量化即怎么对家具进行表征,这里作者是选择StyleGAN3模型(这是一个用以生成图片的GAN模型),作者对各类家具(桌子、凳子等等)进行颜色编码即文章说的color-code,但是相近的类别颜色可能相差也比较大,于是作者通过一个3D embeding来隐式表征,具体做法如下:

首先对某一个家具类别名通过Universal Sentence Encoder网络来抽取一个512维的向量,然后用t-SNE算法来将其降维到一个3D embedding,然后将每一个channel缩放到一个[0, 255]区间的值,这样就完成了一个RGB颜色的映射,通过这种方式作者一共表征了一千多种家具。

RECOVERING 3D FURNITURE LOCATIONS AND ORIENTATIONS

表征好了后,接下来就是训练GAN模型啦也就是论文当中说的RECOVERING重建,论文中用的是一个矩形扫描算法,其能够在给定颜色和子区域的情况下找到最佳的边界其实就是摆放位置,那它是怎么做的呢?它的loss是:最小化矩形内的所有像素颜色和家具类别的 RGB 颜色值的欧式距离。

GENERATING DIVERSE ARRANGEMENTS

这里是作者想尽可能多的生成一些布局,提高多样性即生成不同价位和不同数量的家具布置,作者将这一问题视为LSI问题,作者通过QD来搜索StyleGAN3 的潜在空间。听到这里是不是感觉有点不懂了,其实目的很明确,就是在这么多输出布局中要找到一个最好的布局也就是这里说的搜索,就像我们在做大模型的推理的时候,也是用了什么网格搜索本质上是一样的;做这一类任务的前提是得定义量化好什么是“最好的”,专业点的话就是得定义好目标函数和度量函数。

具体的对于目标函数作者这里定义为最终的局部和空间的网格尽可能的匹配,对于度量函数作者则是从成本角度出发的即算最终布局的家具成本和数量。说白了就是目标函数就是要布局的尽可能的好也就是和人布局的差不多,这是最基本的前提,度量函数就是在其基础上成本尽可能的低,花的钱最少且布局的最好,这不就是这个落地场景的目标嘛。

EXPERIMENTAL RESULTS

这部分就是实验啦,具体效果如下:

?可以看到右上角就是一个包含大量昂贵家具的布置的布置,右下角是一个空房子,当然还有一些空白这里没有布局是因为不太可能有高价的空房间或有几件低价家具的房间。

总结

(1)先不管效果好不好,是不是挺有趣的,如果能将学的一些算法搬到一些有趣的场景不论是生活啊游戏啊等等都是非常好哒。

(2)从技术角度看“搬”的这一过程其实就是在干“量化”这一件事,怎么将任务定义量化好是最关键的,至于模型什么的只要定义好了问题要用什么技术自然而然就出来了,即使大家不会这一算法也没有关系,找一个目前已经开源的sota模型跑跑就可以啦。

关注

欢迎关注,下期再见啦~

欢迎关注笔者微信公众号:

github:

Mryangkaitong · GitHubhttps://github.com/Mryangkaitong

知乎:

小小梦想 - 知乎

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-06-29 19:00:05  更:2022-06-29 19:03:34 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年4日历 -2024/4/26 16:53:40-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码