溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

發(fā)布時(shí)間:2021-07-08 17:40:21 來(lái)源:億速云 閱讀:401 作者:chen 欄目:編程語(yǔ)言

這篇文章主要介紹“怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片”,在日常操作中,相信很多人在怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

在之前一篇文章,

python 將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片(上)

留了個(gè)坑,今天來(lái)填完它。


之前的速度不是很快,這次使用了numpy 來(lái)計(jì)算,速度已經(jīng)比較快了,傳入圖片,到生成馬賽克圖,樂(lè)高積木圖以及生成零件清單不會(huì)超過(guò) 10 s 鐘。

先看看效果:

圖片效果


怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

再放大一點(diǎn)

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

馬賽克圖片就省略了,之前已經(jīng)看過(guò)了。下面再看看生成的零件清單。

零件清單


怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片      怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片        怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片 


實(shí)現(xiàn)過(guò)程


最難的其實(shí)就是顏色對(duì)比,實(shí)際圖片像素顏色種類是非常多的,理論上可以有256*256*256種,而樂(lè)高圖片只有50多種,如何讓每種像素值都匹配到對(duì)應(yīng)的圖片呢。

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

方法就是找到最接近值,比如在一個(gè)列表里如何找到最接近值呢?

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

將目標(biāo)數(shù)與其列表中的每一個(gè)數(shù)相減,并對(duì)差值取絕對(duì)值,最后在絕對(duì)值中找最小數(shù)。


單個(gè)數(shù)的原理明白了,顏色值 RGB 就容易理解了,RGB值是一個(gè)列表,相當(dāng)于要在一個(gè)嵌套列表里面找到最近接的列表值。

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片


完整代碼:

img2pixel.py 模塊   

作用:生成馬賽克圖片


怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

generate_lego_img.py  模塊

生成樂(lè)高圖片,以及零件清單


  1. 導(dǎo)入模塊和讀取數(shù)據(jù)


怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

文件內(nèi)容:

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

2.找到最接近顏色

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

3. 生成樂(lè)高圖片和返回零件清單字典數(shù)據(jù)

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

4.生成Excel 零件清單

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

5.使用

傳入要處理的圖片文件名就可以了,會(huì)自動(dòng)生成對(duì)應(yīng)的圖片文件和數(shù)據(jù)文件。

怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片

也可以做成GUI界面,變成一個(gè)exe程序或者部署到網(wǎng)站上,讓其他人使用。

到此,關(guān)于“怎么用python將圖像轉(zhuǎn)換為樂(lè)高積木風(fēng)格圖片”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI