第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

創(chuàng)建新的靈活dtype的numpy數(shù)組標(biāo)量

創(chuàng)建新的靈活dtype的numpy數(shù)組標(biāo)量

湖上湖 2021-03-17 18:14:03
我有解決問題的有效解決方案,但是當(dāng)嘗試不同的事情時,我感到驚訝的是,找不到更好的解決方案了。歸結(jié)為創(chuàng)建一個靈活的dtype值以進(jìn)行比較并插入到數(shù)組中。我有一個RGB 24位圖像(每個R,G和B為8位)圖像陣列。事實(shí)證明,對于某些動作,最好將其用作具有HxWx3的3D數(shù)組,而其他時候最好將其用作具有dtype([[''R',uint8),('G',uint8)的結(jié)構(gòu)化數(shù)組,('B',uint8)])。一個示例是嘗試重新標(biāo)記圖像顏色,以便為每種唯一顏色賦予不同的值。我使用以下代碼執(zhí)行此操作:# Given im as an array of HxWx3, dtype=uint8from numpy import dtype, uint8, unique, insert, searchsortedrgb_dtype = dtype([('R',uint8),('G',uint8),('B',uint8)]))im = im.view(dtype=rgb_dtype).squeeze() # need squeeze to remove the third dimvalues = unique(im)if tuple(values[0]) != (0, 0, 0):    values = insert(values, 0, 0) # value 0 needs to always be (0, 0, 0)labels = searchsorted(values, im)這可以很好地工作,但是我試圖使該if語句看起來更好,但卻找不到方法。因此,讓我們先看一下比較:>>> values[0](0, 0, 0)>>> values[0] == 0False>>> values[0] == (0, 0, 0)False>>> values[0] == array([0, 0, 0])False>>> values[0] == array([uint8(0), uint8(0), uint8(0)]).view(dtype=rgb_dtype)[0]True>>> values[0] == zeros((), dtype=rgb_dtype)True但是,如果您想要除(0,0,0)或(1,1,1)之外的其他東西,而又看上去又不是可笑的東西怎么辦?似乎應(yīng)該有一種更簡單的方法來構(gòu)造它,例如rgb_dtype.create((0,0,0))。接下來是insert語句,您需要為插入0 (0, 0, 0)。對于其他值,這實(shí)際上是行不通的,例如,插入(1, 2, 3)實(shí)際上是inserts (1, 1, 1), (2, 2, 2), (3, 3, 3)。因此,到底有沒有更好的方法?謝謝!
查看完整描述

1 回答

?
jeck貓

TA貢獻(xiàn)1909條經(jīng)驗(yàn) 獲得超7個贊

我可以insert()為您的案例做一些工作(請注意,而不是0使用[0]):

values = insert(values, [0], (1,2,3))

給予(例如):

array([(0, 1, 3), (0, 0, 0), (0, 0, 4), ..., (255, 255, 251), (255, 255, 253), (255, 255, 255)],
       dtype=[('R', 'u1'), ('G', 'u1'), ('B', 'u1')])

關(guān)于另一種處理方法if,您可以執(zhí)行以下操作:

str(values[0]) == str((0,0,0))

或者,也許更強(qiáng)大:

eval(str(values[0])) == eval(str(0,0,0))


查看完整回答
反對 回復(fù) 2021-03-30
  • 1 回答
  • 0 關(guān)注
  • 159 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號