Maison > Article > développement back-end > Démarrage rapide de Golang : implémentation de la fonction de reconnaissance d'image et de l'accueil de l'interface Baidu AI
Démarrage rapide de Golang : Implémentation de la fonction de reconnaissance d'image et de l'accueil de l'interface Baidu AI
Introduction :
Golang est un langage de programmation open source qui est progressivement devenu populaire parmi les développeurs ces dernières années pour ses fonctionnalités simples et efficaces. Dans cet article, nous utiliserons Golang pour implémenter une fonction de reconnaissance d'image et la connecter à l'interface Baidu AI. En étudiant cet article, vous pourrez rapidement démarrer avec Golang et comprendre comment utiliser l'interface Baidu AI pour la reconnaissance d'images.
Préparation :
Avant de commencer à écrire du code, nous devons préparer certains travaux nécessaires. Tout d’abord, assurez-vous d’avoir installé l’environnement de développement Golang et d’avoir des connaissances de base en programmation Golang. Deuxièmement, nous devons demander un compte de développeur Baidu AI et créer une application de service de reconnaissance d'image. Enfin, vous devez installer la bibliothèque de requêtes HTTP de Golang, que nous utiliserons pour envoyer des requêtes HTTP à l'interface Baidu AI.
Implémentation du code :
Tout d'abord, nous devons importer les bibliothèques requises :
package main import ( "fmt" "io/ioutil" "net/http" "net/url" )
Ensuite, nous définissons une fonction pour envoyer une requête HTTP POST à l'interface Baidu AI et obtenir le résultat renvoyé :
func postImageToAI(imageURL string) string { apiURL := "https://aip.baidubce.com/rest/2.0/image-classify/v2/advanced_general" apiKey := "your-api-key" // 替换为你自己的 API Key secretKey := "your-secret-key" // 替换为你自己的 Secret Key client := &http.Client{} form := url.Values{} form.Set("image_url", imageURL) req, err := http.NewRequest("POST", apiURL, ioutil.NopCloser(strings.NewReader(form.Encode()))) if err != nil { fmt.Println(err) return "" } req.Header.Add("Content-Type", "application/x-www-form-urlencoded") req.Header.Add("API-Key", apiKey) req.Header.Add("Secret-Key", secretKey) resp, err := client.Do(req) defer resp.Body.Close() body, err := ioutil.ReadAll(resp.Body) if err != nil { fmt.Println(err) return "" } return string(body) }
Dans le code ci-dessus, nous avons utilisé la bibliothèque http
de Golang pour envoyer des requêtes HTTP, et utilisé l'adresse d'interface, la clé API et la clé secrète de Baidu AI pour l'authentification. Envoyez une requête POST en appelant la méthode Post
et convertissez le résultat renvoyé en chaîne avant de le renvoyer. http
库来发送 HTTP 请求,并使用百度 AI 的接口地址、API Key 和 Secret Key 进行认证。通过调用 Post
方法发送 POST 请求,并将返回结果转换为字符串后返回。
接下来,我们定义一个 main
函数来读取本地的图片文件,并调用刚刚定义的函数来识别图片中的物体:
func main() { imageURL := "https://example.com/image.jpg" // 替换为你自己的图片 URL result := postImageToAI(imageURL) fmt.Println(result) }
在 main
函数中,我们首先定义了一个图片的 URL,这里你可以替换为你自己的图片 URL。然后,我们调用了 postImageToAI
函数,并将返回结果打印输出。
执行代码:
保存以上代码为 main.go
main
pour lire le fichier image local et appelons la fonction que nous venons de définir pour identifier les objets dans l'image : $ go run main.goDans
main
Dans le fonction, nous définissons d’abord une URL d’image, que vous pouvez remplacer par votre propre URL d’image. Ensuite, nous avons appelé la fonction postImageToAI
et imprimé le résultat de retour.
Exécutez le code :
main.go
, puis entrez le répertoire où se trouve le code dans le terminal, et exécutez la commande suivante pour exécuter le code : 🎜rrreee🎜Le Le code enverra une requête HTTP à l'interface Baidu AI et renverra les résultats de la reconnaissance. 🎜🎜Résumé : 🎜Grâce à l'étude de cet article, nous avons implémenté une fonction de reconnaissance d'image simple à l'aide de Golang et l'avons connectée via l'interface Baidu AI. Grâce à cet exemple, vous pouvez rapidement démarrer avec Golang et apprendre à utiliser l'interface Baidu AI pour la reconnaissance d'images. Je vous souhaite plus de succès dans votre apprentissage et votre développement à Golang ! 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!