J'ai un exe qui retourne un tableau de 16éléments. Je dois passer ce tableau à Mysql en utilisant php pour calculer la distance euclidienne. Ma table en MySQL est dans le formulaire.Calcul de la distance Euclidienne Squared
id |img_id | features_1|features_2|features_3|features_4|features_5|features_6|features_7|...upto features_16
1 1 0.389 0.4567 0.8981 0.2345
2 2 0.9878 0.4567 0.56122 0.4532
3 3
4 4
......................
J'ai donc 16 caractéristiques pour chaque image et maintenant je 30.000 images est-img_id est jusqu'à 30.000. Je dois calculer la distance euclidienne du tableau d'exe qui est passé par php avec les données dans la base de données et retourner le img_id des 6 images dont la distance euclidienne est minimale. Supposons que j'ai un tableau de l'exe A [0.458,0.234,0.4567,0.2398] Je dois calculer la distance de chaque img_id avec ce tableau ie pour img_id = 1 la distance sera ((0.458-0.389)^2 + (0.234- 0.4567)^2 + (0.4567-0.8981)^2 + (0.2398-0.2345)^2) et je dois répéter ce processus pour toutes les 30.000 images et retourner le 6 img_id qui a le moins de distance. Quel est le moyen efficace et rapide pour le calculer?
À la main. Votre table ne semble pas configurée pour cela. Est-ce que 'id'' auto_increment'? Pour faire ce genre de chose, vous devriez vraiment avoir une ligne pour chaque image avec les 'features' étant des colonnes plus descriptives et séparées. – Jon
Oui, l'identifiant est un incrément automatique. Est-ce que ce sera plus facile si je sauvegarde les fonctionnalités dans des colonnes séparées plutôt que des lignes séparées? – user1583647
Oui, pour effectuer ce type de calcul avec une précision quelconque, toutes les caractéristiques d'une image doivent être configurées avec leur propre colonne. – Jon