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