Siyah ve beyaz renkleri bir QR Kodunda tersine çevirmeye çalışıyorum.
Benim kodum zaten sıkı beyaz ve siyah olan görüntüler için çalışıyor: RBG değerleri 0,0,0 ve 255,255,255.
Ama beyaz ve siyah biraz kapalı olan başka bir görüntü için çalışmak için başarısız oluyor: 21,21,21 ve 243,243,243.
Kodumu biraz kapalı görüntü üzerinde çalıştırmak, tüm şeyi kesinlikle beyaza dönüştürecektir.
Kodum, her kanalın değerini alır ve bunlardan herhangi biri 140'ı aşarsa, beyaza döner. Neden biraz açık siyah, 21,21,21 beyaza dönüyor?Kod, if ifadem yoksayılıyor mu? Bu kodun neden çalışmadığından emin değilsiniz
def invert(smallPicture):
for pixel in getPixels(smallPicture):
valueRed = getRed(pixel)
valueGreen = getGreen(pixel)
valueBlue = getBlue(pixel)
if (valueRed or valueBlue or valueGreen > 140):
setColor(pixel, white)
else:
setColor(pixel, black)
return smallPicture
Jython'u JES 4.3'te kullanıyorum.
Teşekkürler! valueRed
True
olarak değerlendirilen veya valueGreen
True
olarak değerlendirilen veya valueBlue
eğer daha büyük 140. ise Python içinde her değişkeni karşılaştırmak etmezse Kodunuzda
Sen 140' 'yine her değişkeni karşılaştırmak istersiniz -' (valueRed> 140 veya valueBlue> 140 ya da ...) '. İlgili: [Bir değişkeni birden çok değere karşı nasıl test ederim?] (Http://stackoverflow.com/questions/15112125/how-do-i-test-one-variable-against-multiple-values) –