Bir görüntü dizisinden belirli indislere göre tüm pikseller nasıl elde edilir
Jan 18 2021
Görüntü dizisi şekli (540, 960, 3)
ve şuna benzer:
img_rgb = [[[ 95 71 71]
[ 95 71 71]
[ 95 71 71]
...
[182 171 181]
[182 171 181]
[182 171 181]]
[[ 95 71 70]
[ 95 71 70]
[ 95 71 71]
...
[183 172 182]
[183 172 182]
[183 172 182]]
[[ 95 72 70]
[ 95 71 70]
[ 95 71 71]
...
[183 172 182]
[183 172 182]
[183 172 182]]
...
[[ 36 35 45]
[ 36 35 45]
[ 36 35 45]
...
[ 49 45 50]
[ 49 45 50]
[ 49 45 50]]
[[ 36 35 45]
[ 36 35 45]
[ 36 35 45]
...
[ 49 45 50]
[ 49 45 50]
[ 49 45 50]]
[[ 36 35 45]
[ 36 35 45]
[ 36 35 45]
...
[ 49 45 50]
[ 49 45 50]
[ 49 45 50]]]
Ve indices
her eleman indeksini gösteren elemanlar elde etmek istiyorum ve bunun indices
gibi:
indices = [
[0, 0], [0, 1], [0, 2]
]
Beklenen çıktı
[
[ 95 71 71],
[ 95 71 71],
[ 95 71 71],
]
Bu bağlantıda iki benzer soru var, biri belirli endeksler üzerinden Python numpy 2D dizi toplamı ve diğeri NumPy ndarrays'de depolanan görüntülerden belirli (R, G, B) renk değerlerinin (x, y) dizinlerini bulmak .
Bir IndexError: too many indices for array
soruyu tek tek denediğimde aldı img_rgb[tuple(indices)]
.
Yanıtlar
fountainhead Jan 18 2021 at 14:50
Sadece transpoze etmeniz gerekiyor indices
.
img_rgb[tuple(np.transpose(indices))]
np.tranpose()
indices
herhangi bir "dizi benzeri" yapı girdi olarak beklediğinden, sadece bir liste olsa bile çalışır .
Donovan, Şarkılarından 1'ini The Beatles'ın "Lucy in the Sky with Diamonds" şarkısıyla karşılaştırdı
Nicole Kidman, Michael Keaton ve Val Kilmer'in Batman Olarak Paylaştığı Bu 1 Çekici Özelliğe Bayıldı
Tom Girardi Dolandırıcılık Suçlamalarından Yargılanma Yetkisinin Belirlenmesi İçin Duruşmaya Katıldı