電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>LED像素藝術(shù)開(kāi)源分享

LED像素藝術(shù)開(kāi)源分享

2023-06-19 | zip | 0.00 MB | 次下載 | 免費(fèi)

資料介紹

描述

LED像素藝術(shù)

圖像由像素組成,像素是圖片元素的縮寫(xiě)。這些像素中的每一個(gè)都由一個(gè)紅色、一個(gè)綠色和一個(gè)藍(lán)色值組成。每種顏色的值可以在 0 到 255 之間,提供超過(guò) 1600 萬(wàn)種不同顏色和陰影的組合。Python 圖像庫(kù) (PIL) 可用于掃描圖片、提取每個(gè)像素并識(shí)別該像素的 RGB 值。在這個(gè)項(xiàng)目中,我編寫(xiě)了一個(gè)程序來(lái)拍攝 10 X 10 的圖像,識(shí)別每個(gè)像素的顏色值,然后將這些值正確地傳送到 LED 顯示板。它加載圖像、掃描圖像,然后將圖像實(shí)時(shí)顯示在 LED 板上。

?

程序如何運(yùn)作第 1 部分

PIL 使掃描圖像和檢索像素值變得非常容易。當(dāng)前的 Raspberry Pi OS 預(yù)裝了 PIL,因此您可以開(kāi)始使用了。只需導(dǎo)入所需的模塊,然后使用下面的程序代碼打開(kāi)圖像文件,然后測(cè)量文件的寬度和高度,然后使用代碼創(chuàng)建一個(gè)列表來(lái)存儲(chǔ)像素值。然后,我將像素總數(shù)(在本例中為 100)存儲(chǔ)在一個(gè)名為 total 的變量中。這對(duì)于確保圖像具有顯示板所需的正確像素?cái)?shù)很有用。file = input("請(qǐng)輸入文件名")

im = Image.open(file + ".jpg", "r") # name of file to scan
width, height = im.size
pixel_values = list(im.getdata())
print (pixel_values)
total = (len(pixel_values))
#pixel_list = pixel_values
print ("Found ", total, "Pixels")

程序如何運(yùn)作第 2 部分

'total' 變量在第一行代碼中用于檢查圖像是否包含 100 個(gè)像素,如果包含,則將第一個(gè)像素設(shè)置為綠色。這向用戶(hù)表明圖像已成功掃描并將顯示。現(xiàn)在,您可能已經(jīng)注意到,在這行代碼中,綠色的 255 首先出現(xiàn),但在正常 LED 值中,紅色首先出現(xiàn)。這是我的硬件問(wèn)題。LED 在正常的 RGB 設(shè)置中沒(méi)有接線(xiàn),而是 GRB!為了解決這個(gè)問(wèn)題,我必須創(chuàng)建一個(gè)名為 npc 的新列表,然后使用 for 循環(huán)解析每個(gè)像素值,提取綠色、紅色和藍(lán)色值,然后將它們重新組合成正確的順序,將它們存儲(chǔ)到一個(gè)名為 RGB_correct 的變量。接下來(lái),代碼將這些正確的值寫(xiě)回 npc 列表。

if total == 100:
  unicorn.set_pixel(9, 0, 255, 0, 0)
  unicorn.show()
  sleep(3)
  npc = [] # list to stored new RGB values New Pixel Colours
  # Sorts GRB values into RGB values
  for i in range(0, 100):
  pos = pixel_values[i] # pull first RGB values from list
  green = pos[0] # pull out green value
  red = pos[1] # pull out red value
  blue = pos[2] # pull out blue value
  RGB_correct = (red, green, blue)
  npc.append(RGB_correct) # adds correct RGB value to new pixel colour list
  #print (npc) #uncomment for testing

程序如何運(yùn)作第 3 部分

代碼的最后一部分使用一個(gè)數(shù)組將每個(gè)新像素值存儲(chǔ)在 LED 顯示屏的正確位置。例如,存儲(chǔ)在 npc_list 中的第一組 RGB 值位于位置 0。在名為 pic 的數(shù)組中,這個(gè)新的像素值被添加到位置 npc[0],在這個(gè)特定的 LED 上顯示顏色。該陣列由 100 個(gè) LED 中每個(gè) LED 的特定位置組成,并包含顏色值。然后,代碼使用代碼 unicorn.set_pixels(pic) 將此數(shù)據(jù)直接寫(xiě)回 LED 板。如果圖像大于 100 像素,則 ELSE 語(yǔ)句會(huì)顯示錯(cuò)誤消息,并且第一個(gè)像素設(shè)置為紅色以指示錯(cuò)誤。

??pic =  [[npc[9],npc[8],npc[7],npc[6],npc[5],npc[4],npc[3],npc[2],npc[1],npc[0]],            [npc[19],npc[18],npc[17],npc[16],npc[15],npc[14],npc[13],npc[12],npc[11],npc[10]],            [npc[29],npc[28],npc[27],npc[26],npc[25],npc[24],npc[23],npc[22],npc[21],npc[20]],            [npc[39],npc[38],npc[37],npc[36],npc[35],npc[34],npc[33],npc[32],npc[31],npc[30]],            [npc[49],npc[48],npc[47],npc[46],npc[45],npc[44],npc[43],npc[42],npc[41],npc[40]],            [npc[59],npc[58],npc[57],npc[56],npc[55],npc[54],npc[53],npc[52],npc[51],npc[50]],            [npc[69],npc[68],npc[67],npc[66],npc[65],npc[64],npc[63],npc[62],npc[61],npc[60]],            [npc[79],npc[78],npc[77],npc[76],npc[75],npc[74],npc[73],npc[72],npc[71],npc[70]],            [npc[89],npc[88],npc[87],npc[86],npc[85],npc[84],npc[83],npc[82],npc[81],npc[80]],            [npc[99],npc[98],npc[97],npc[96],npc[95],npc[94],npc[93],npc[92],npc[91],npc[90]]]               

unicorn.set_pixels(pic)    
unicorn.show()

else:    
  print ("Image Too Large")    
  unicorn.set_pixel(9, 0, 0, 255, 0)    

  unicorn.show()
?
poYBAGOYCl-ANXvSAAEwg93zYMc061.jpg
?

?


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開(kāi)發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)