Skip to main content

Tutorial - numpy for changing color of an image at pixel level.

import numpy as np
import matplotlib.pyplot as plt
import cv2 as cv

#this program conversts color of certain sections of image
#each pixel is checked for the r g b and modified using a numpy array



image = cv.imread('rg.png')
#print(image.shape)
#print(np.asarray(image))

width , height , channels = image.shape
#print(width)
#print(height)
#print(channels)

plt.imshow(image)
plt.show()
#print(image[29][29])

zero_array = np.zeros((2, 3, 3))


for pixeli in range(width):
    #print(pixeli)
    for pixelj in range(height):
       # print(pixeli,pixelj)
        #print(image[pixeli][pixelj])
        pixelvalue = image[pixeli][pixelj]
        #print(pixelvalue)
        if pixelvalue[0] == 76 and pixelvalue[1] == 177 and pixelvalue[2] == 34:
            #print('mach')
            r = 0
            g = 0
            b = 0
            image[pixeli][pixelj] = [r, g, b]
 
plt.imshow(image)
plt.show()


The pixel level color are changed as you can see the change in lower right rectangles.
please feel free to add any comments.

Comments

Popular posts from this blog

SHA-256 initial values

The simple workout to arrive at the initial values for sha-256 The first 32 bit of the fractional part of the sqroot (first 8 prime number 2-19) Alright what does it say  Sqrroot(prime)- Let’s say the first prime is 2 Sqroot(2)  = 1.414213562373095 Convert to hexadecimal- Since we are worried about the fractional part alone Converting the fractional part would be easy Fractional part- 0.414213562373095 Multiply the fractional part with 16 to arrive at hex 0.414213562373095*16= 6.62741699796952 0.62741699796952*16= 10.03867196751232 0.03867196751232*16=0.61875148019712 0.61875148019712*16=9.90002368315392 0.90002368315392*16=14.40037893046272 0.40037893046272*16=6.40606288740352 0.40606288740352*16=6.49700619845632 0.49700619845632*16=7.95209917530112 Resulting hexadecimal would be 6a09e667 which is  h0 := 0x6a09e667 Iam going to stop at the 8th iteration , why is that ? Since we are interested in 32 bit (8*4=32) Alright to make it clear  Convert hexade...

Linear Regression with one variable - Introduction

 It is not but making a some how clear relationship among variables the dependent and independent variables. talking in terms of maths the equation can be used meaningfully for something may be to determine /predict values from data. if y = m * x + b  the values for m , b can be anything but has to appropriate to predict y  so the loss which is  difference from existing to prediction is close to zero ~0 to start with we can say the one variable as -x  in some scenario m , b are called variables    the equation stated about is a line equation we have any equation  y = 2*x  y = x*x y = 2x +2x*x  so why the need of all these equations , it is all about playing data now a days in machine learning problems we create a data sets , lets consider as x  y to be a value of x the datas . y = datas  when we express the data as a function and plot in the graph we get the curves  take some random data x and plot x and y  x =1 , 2, ...