numberImgRecognition/goVersion/imgOperations.go
goVersion/imgOperations.goRaw
1package main
2
3func comparePixels(p []int, q []int) int {
4 numCoincidences := 0
5 for i := 0; i < len(p); i++ {
6 if p[i] == q[i] {
7 numCoincidences++
8 }
9 }
10 return numCoincidences
11}
12
13func compareImgs(a imgRGBA, b imgRGBA) int {
14 numCoincidences := 0
15
16 for i := 0; i < len(a); i++ {
17 numCoincidences = numCoincidences + comparePixels(a[i], b[i])
18 }
19 return numCoincidences
20}
21
22func analyzeImg(examplesImg map[string][]imgRGBA, timg imgRGBA) map[string]int {
23 numCoincidences := make(map[string]int)
24
25 for k, imgs := range examplesImg {
26 numCoincidences[k] = 0
27 //fmt.Println(k)
28 for _, img := range imgs {
29 numCoincidences[k] = numCoincidences[k] + compareImgs(img, timg)
30 }
31 }
32 return numCoincidences
33}