diff --git a/data/img.jpg b/data/img.jpg new file mode 100644 index 0000000..376385c Binary files /dev/null and b/data/img.jpg differ diff --git a/demo3.py b/demo3.py new file mode 100644 index 0000000..c78103b --- /dev/null +++ b/demo3.py @@ -0,0 +1,31 @@ +from nnnar import * +from knn import * +import random + +import matplotlib.pyplot as plt +import numpy as np + +image = plt.imread('./data/img.jpg') +image = np.array(image) + + +height, width, _ = image.shape + +def replaceRandomPixel(image,nb): + for i in range(nb): + y = random.randint(0, height - 1) + x = random.randint(0, width - 1) + v = [random.randint(0,255), random.randint(0,255), random.randint(0,255)] + n = [[-1,-1],[-1,0],[-1,1],[0,-1],[0,1],[1,-1],[1,0],[1,1]] + for i in n: + if (y+i[0] >= 0 and y+i[0] < height and x+i[1] >= 0 and x+i[1] < width): + image[y+i[0],x+i[1]] = v + return image + + +image = replaceRandomPixel(image, 1000) + + +plt.imshow(image) +plt.axis('off') +plt.show() \ No newline at end of file diff --git a/demo4.py b/demo4.py index ef8a918..b76d91e 100644 --- a/demo4.py +++ b/demo4.py @@ -32,7 +32,7 @@ def runOneTest(trainTestRatio): value = train.iloc[:, -1].values for i in range(len(coord)): - nnnar.addPoint(np.array(coord[i]), np.array([value[i]])) + knn.addPoint(np.array(coord[i]), np.array([value[i]])) # Test du modèle coord = test.iloc[:, :-1].values @@ -40,7 +40,7 @@ def runOneTest(trainTestRatio): nbError = 0 for i in range(len(coord)): - if nnnar.getLabelOfPoint(np.array(coord[i]), 5) != value[i]: + if knn.getLabelOfPoint(np.array(coord[i]), 5) != value[i]: nbError += 1 return 100 - nbError / len(coord) * 100