from PIL import Image, ImageOps
import numpy as np
import cv2
image='image.png'
img = Image.open(image)
im = ImageOps.grayscale(img)
bgr = cv2.imread(image, cv2.IMREAD_GRAYSCALE)
cv2.imshow('img',bgr)
cv2.waitKey(0)
colour={}
for pixel in im.getdata():
if pixel in colour:
colour[pixel] += 1
else:
colour[pixel] = 1
if len(colour) > 2:
aux = sorted([(v,k) for (k,v) in colour.items()])
res = [(v,k) for (k,v) in aux[-3:]]
print(res,res[0][0],res[2][0])
find = res[0][0] # какие значения заменять
replace = res[2][0] # на какие значения заменять
mask = (bgr == find)[..., 0]
bgr[mask] = replace
cv2.imshow('img',bgr)
cv2.waitKey(0)
iVBORw0KGgoAAAANSUhEUgAAAFgAAAAoCAYAAAB6tz31AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAM9ElEQVRoge2af3QV1bXHP7kJwyWGGJMQHB6X3IV5MFKkPAqoYGEWKCvVVgXhFZRof6xWEavlWXRRHrpYLsvCLkQWzx884Pkj/CiPCljRprWGofwQFTFFHgzIj4FJGQiXEEJ OdzcvD/OmTC53CRcAtSy3GvNmsw5 5y9z/fss/c Oxe oWbSVN35R vQYbrYRVzuxV8V4Hp0qUHuKDhtjb qgL8Y6ijomqo77fH Q0D Ou9sMrp9ndeRULnLqfDXGowrQVcCgKtFxlVPlyNgfrMxkjRVb7wMc3YcXG SZCf7Ou7sldIp5UIZpUJPA4uAl4ATQMT37Dcdo7KNsZiOoXZU4WRJU3XnSsqNX sFAywHLwTGt8GyH1hoOsb/ gX6F6ip gBgI/AEUAlUIDboqOkYDcnok4TeFwRyRzbDG9tRgFcCOnAPkAHk p6bgYFAAFhmOsb0uLEKUAyMkE15CHA9coHtwHzTMTb7xg0AZgPvmY6xJBl9k6HWwL0Q0NviSRbgD4DepmPc0Ep/T BNoB8wxXSMdb6 OcCPgG3AagSg3uZ0AwoQGxQDJnkga6oeBL4ELNMxvtuOfr2Bl4HdpmM82QpPLvB/pmN0T9CX0JV1xLLTkuTPQxxnACzXHg8MAU4hjnvlxne3LX3hiVcXkJLyJLDON/ZXQBkwwXSMaCKlNVUfAawCfgFsBjAdo0FT9TJgsKbqeaZj K0 niYiNmlTok5N1YcC7wDbfEf6QWA4wvW5iYDsiA9PFuBsBEgefRsY42cY YNbeH/FBuXQniO3fVGx592uWRmLCvOLXkdszCfx4Fqu3Q/oDQSBqrv7/rSqKRbTLNcOhpWQ55O3AIOBW4A/JFJMU/UA8EP5 ftW9H9Avt80HeMe fcQ4G5gFzCyrcVrqv59YBIwz3SMHW3xehS4ECY5eRZiQyK 5mz5/jHC6mYB83O6Z5VGzzY2fFJadifw3Iz/muotuPkIWq6tWK79KrAceA6YCfw2719ywmqvvD7ARsu1F1uuPRThVgCGW67dz3LtpZZr3x n4hjECdthOsa BPpnIoCspOUm5cp3H Df24GhDzAKSG Hr5kuGGCpSAsXgQC4LqyEygrzi1aHldD6sBJ6q3Tt1uV1NfVVb724ZhqwLzUtdUxap7Rg3Nj/QFjkDkQQmwXMP3nsVDDW1HQU2AcMAl5e9MGcGBAFhgEHgQHAhDj9POtc5TVYrt3Lcu1iy7WfAcYhTsnvTceIejypaak95LpiwHRN1ds61d3kO5KoM1FunSzAFcAjcW1VIKzSJyAGcNw UQ1Mq4pUB5TOneIBvgM4CjwcVkLrwkpofWF 0br62oZj5QecHmElVARMBdLy /SchDjCBYX5RZnAbiBsuXauXFgeIrtpoKXfvxfov Q3K6cDD8m2Yq/Tcu2B3XvmjshVswMIq 6p33PrQsu15477/s9OtoIBtAJwHAZA8gCDyF89yvILSxAMYmEldPTv1rGK1LRA2rU5XWsALNfugfTnYSUU9fF7Mv4bIKyEtgHHgF4IPwzCij Vfw S7/sR7iuAABnLtQPADwAq/n7yAUR6uNV0jP2esFWvvLul7kx9NOpGyxBBLvq3rbvHN9R/VfjimmeMBBaZizCeiJRxu XaCy3X7t8aBhcDcIWcPFMuKtHtLUO awAO7j4SASicqGfKds93H29Fxk/idAwAXto1HOFWQAQ OBfcFF/bCDnfrr u/3ik1PtNb9J/Kyg8Xjhx5O6zZ6OxqpPV 0zH6AasaKj7KnfN4j/mAr1LDhf/LIF laZjeN 9gdtowydfDMCexXogJTpKN8r3boBTJ6rSAAbrA7LixlZ5A6S15MnP6T7ryUJsYkj2D0MAHAWGaKo DAgj3RIwTI4dC3DCOfknhKuIAO978tbuXvyLUyeqM6Jnoy7nLjzzlM6d6v60amOPM1U1AWCK5dp n5xL4iCfsEQAyQHsOXhvsoSTy8X1R1wk9gHU1TRkABR8K1zT2lh5tJbLz4jMNDIQVllpOkYN8Begd2F UT1gAuEu1wQflmPekO/nSw4X34TYiIZH7piRjrCwVf7gBkyoipxOcxvONiDqKpiOUXHz6IHBmuo697XZy6uAHojgiAx 3mZ7lGPtLe8fj4GfLoUFx08 BLgTkS7FAM660cz0rumxLtcE3XbGzm5HxhbgeoR1fnq68kxaY7SxEKgGnkf462O11XXjkT659kz9DxHWvcwTIn1mgX3g6MGmpqaoTx4//fWknZ2Dilu6bkv4VOQ0wMOWawd9ujTzfrhmy2Phvj13JlhHMyULcMxXMTtPoKQpiCO32GuIno1mdb32mihQ55uLBIo9J9/ekY13Q17QG/70xN88W7p2S1ZKICUdkXrVIW5/SskqYyGA fn rNTUwEBgs kYlk/OOIDPNn6xy78Gy7Uzr83uyq1jvrOzKdakLHh6abXU4X6fzhHPfY0eN7wEqAoroRaL8AfHZAH2A3KeFWqqPkgqs990jGZ/l5KSkq4ElRjSZQA5CcY6wAr5udEnE6BK9m9DWOMv5/7u16EN67ZmpXVKU4CfS75NqakB5UxVbeSQaff/YPWmrNS01DRapmbBvWUHZgGVn2742wnZ3OLEZHfPGgREPv6wrODo4eMAD Wq2WHJ87gvU8gmgYv0ZxIB3 LaK0J7OefPNVUf997y0iFffnEo NDwaR9qql6gqfqjiCKOgrg0NFPmdRmxiFOZVphfdMy/EM73wQUIK 8udfGCYqXs34vwvZHC/CK9/OCxNG3gDQ0lh4tvlPyblaAS3LNjf3qumj3749KyrMzrMmL4gtvcJ151 g68YRfwTmNj7DrZ3HxirL3l/R94/N4ZwIKmpqbAS08trQYy9btv9S42DwPI4JeJL1D71tFMAa8xvp7pJ1lqzJQgzwZeXvL8yokzi17QjpdHXERxZRbCuqaajmF4Yy3Xvn7oqIHRmtO1AKs0Vb937dKSHzlHKtzC/KKAT8Z4QAO2m44Rk4q22AjZtlW2zWlsbIzeMeG7lcBg0zHUksPFNdf36hY7vK88OHno45X1tQ2MHndbTcnh4uZM4OkFU0qknmtIEFfCfXvukvLeAI7u3Lanz6E9R2IZmekjJF4eb1Z7Aa4ZYJ/yLXbAB7YL3IW4DT0JzBlWOHj/d0bcFJHAvw/MBUb6S5SSHnzoV MrMjLTNyMuBm8ve2lt7LE7Zw0FDmuq/qWm6geAhYjUa4E3cNn8NfPiAIBzF468lJSUihF33VzNudz3zn6D/rWuvrbB/arBnRZrjLmFk/RqxNXaKyxpwCdhJVTO bGgeUNlxjEP4MWnljScOV2b3rmLkk7cZrw17 1HW8EWaKOa5vclMrFuUT0qebF4NBB59bU5o1ubQ0brsV2uCR7862dvj9VUfSAw6LbvDV5afap2/0d//qzMt6hyYJHpGFs9 ZOnjXsNuH3ioKmbAK9 6/nhQEpKytJAauA ROYCcN9Nt2h176/YEAB6Z VkblZ75WUCQxHF/Hsl39vynQtUm47hArw2e9niR56dfJBzx34FMOXLnYf60ISidO4UHDV2eMCcZ3hjefDJ 6Y9M OXrUHQOsAXUAPNBlzLtScja8HyqUYUVUYg/JUC/FbOWQaUlbxQPBZh UW kmQi av3lh3o/7sdL3cOK3/w2qs0VX8D6FNf2/A/iJJpH8u1RwEF3xrcZ3NTU9P9QEUwvfMiYDowRKZad0kdS6WY5ouDpurOI89OnosoIkWkLDRVnwssPryvPNC5i8KPp0 4b/68Z7fTehbVgpKtBwNgubYCZFh7y/uH /bMboO1DpgZVkJb49o3AEXAYsu1lwNHkBsUVkKupuqOvKYW9B14w5KwEor5B5uOMdP3 SmijDgDoFuPnDeBlcD1h0x7BeIa3Q RmqUDy8NKKOaLK6ZvrvOyG9Mx1muqvsv96uyA9K5dlMzsrmMs117EBdzi4CIBBtxHvzez1yt/fH60FOQ9OYg6hAvsAdaHldCxBONfAfIRVj7H32G5dh1w0Npbvjbct2cZsLQdXbYjSpWeNZZ6FxxJHyOscirnghuciyv fwC8LvtaZAaIS8yHjdHYQUTcmgrYsu/SAywT65yw8tbFDEe6hSdk0BmAuJLmIEDKAgj37bkdKA4roe3tTLcD6ZOB1fHWDnyCADgd2OxtuD uaKru8WYDNWEl5PonMB3D0FT9xjNVNR8hyqa3cy6nbxPgVumf6ccilms/Zbn2Isu18 L7Bmt3Hbdc zPLtT 3XFtvbR5N1R3LtTdZrv1OWzrIEuXnvid4kcu5PL evJI/vvb6LNce9dhj/3nacu22wFUkYK fP1NLslx7peT9KJk1tEuXyqov9em4gB9Qt/tbNAlyf m22pzXcu1hEuD3ktf2KqVLfXIs1 7t34yOyvmGkqBvQL6C9P81e8ESIeGYGAAAAABJRU5ErkJggg==