【微信小程序调用百度API实现图像识别实战】----前后端分离

这篇具有很好参考价值的文章主要介绍了【微信小程序调用百度API实现图像识别实战】----前后端分离。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言:基于之前发布的文章【微信小程序调用百度API实现图像识别功能】----项目实战稍微进行了升级改进,主要新增了后端,数据库,实现对于虫害识别,返回防治建议等信息。

本文主要讲述:

如何创建数据库

如何连接数据库

如何创建后端服务

如何调用后端服务

目录

 一.创建数据库

二.连接数据库并创建后端服务 

2.1方法一 php

 2.2方法二 flask

 三.前端调用后端接口

 四.项目实现

 4.1启动后端

 4.2启动前端

 五.源码获取


 文章来源地址https://www.toymoban.com/news/detail-857529.html

 一.创建数据库

 创建数据库及数据表请点击此处查看,在目录第二部分,两个SQL命令。

二.连接数据库并创建后端服务 

 两种方法分别是php和flask。

确保将usernamepassworddatabase替换为您实际的MySQL数据库用户名、密码和数据库名称。同时,确保创建的表名查询中使用的表名pest_advice_table相匹配

启动flask/php应用后,前端就可以通过POST请求到后端端口

2.1方法一 php

<?php  
// 数据库连接配置  
$host = 'localhost';  
$dbname = 'your_database_name';  
$username = 'your_username';  
$password = 'your_password';  
  
// 创建连接  
$conn = new mysqli($host, $username, $password, $dbname);  
  
// 检查连接是否成功  
if ($conn->connect_error) {  
    die("连接失败: " . $conn->connect_error);  
}  
  
// 接收前端发送的害虫名称  
$pestName = isset($_POST['pest_name']) ? $_POST['pest_name'] : null;  
  
if ($pestName) {  
    // 查询数据库  
    $sql = "SELECT advice FROM pest_advice WHERE name = ?";  
    $stmt = $conn->prepare($sql);  
    $stmt->bind_param("s", $pestName);  
    $stmt->execute();  
    $result = $stmt->get_result();  
  
    if ($result->num_rows > 0) {  
        // 获取并返回防治建议  
        $row = $result->fetch_assoc();  
        $advice = $row['advice'];  
        echo json_encode(['advice' => $advice]);  
    } else {  
        // 没有找到对应的防治建议  
        echo json_encode(['error' => '没有找到针对该害虫的防治建议']);  
    }  
} else {  
    // 害虫名称未提供  
    echo json_encode(['error' => '请提供害虫名称']);  
}  
  
// 关闭连接  
$conn->close();  
?>

 2.2方法二 flask

from flask import Flask, request, jsonify  
import mysql.connector  
  
app = Flask(__name__)  
  
# 数据库配置  
DB_CONFIG = {  
    'host': 'localhost',  
    'user': 'your_username',  
    'password': 'your_password',  
    'database': 'your_database',  
    'raise_on_warnings': True  
}  
  
# 查询防治建议  
def get_advice_for_pest(pest_name):  
    cnx = mysql.connector.connect(**DB_CONFIG)  
    cursor = cnx.cursor()  
    query = ("SELECT advice FROM pest_advice_table WHERE name = %s")  
    cursor.execute(query, (pest_name,))  
    advice = cursor.fetchone()  
    cnx.close()  
    return advice[0] if advice else None  
  
@app.route('//你的路由', methods=['POST'])  
def get_advice():  
    data = request.get_json()  
    pest_name = data.get('pest_name')  
      
    if not pest_name:  
        return jsonify({'error': 'Pest name is required'}), 400  
      
    advice = get_advice_for_pest(pest_name)  
      
    if advice:  
        return jsonify({'advice': advice})  
    else:  
        return jsonify({'error': 'No advice found for the given pest'}), 404  
  
if __name__ == '__main__':  
    app.run(debug=True)

 三.前端调用后端接口

 图像识别代码功能实现就不展开说了,点击这里阅读文章

 发送POST请求

 // 发送害虫名称到后端服务获取防治建议  
          wx.request({  
            url: 'XXXXXX', // 替换为你的后端服务地址  
            method: 'POST',  
            header: {  
              'content-type': 'application/json' // 设置请求头为JSON格式  
            },  
            data: {  
              pest_name:XXXX// 将你获取的害虫名称作为JSON数据发送  
            },  
            success: adviceRes => {  
              if (adviceRes.data && adviceRes.data.advice) {  
                advice = adviceRes.data.advice; // 获取防治建议  
                that.setData({  
                  load_title: '识别结果 : ' + result,  
                  load_message: '置信度 ' + score,  
                  advice_message: '防治建议 : ' + advice // 显示防治建议  
                });  
              } else {  
                // 处理未获取到防治建议的情况  
                console.error('未获取到防治建议');  
                // 可以选择显示一个默认消息或错误提示给用户  
              }  
            },  
            fail: function (error) {  
              // 处理请求防治建议失败的情况  
              console.error('获取防治建议失败', error);  
              // 可以选择显示一个错误提示给用户  
            }  
          });  

 四.项目实现

 4.1启动后端

以flask为例,终端输出结果如下所示代表成功。

微信识别图片api,笔记,微信小程序,后端,人工智能,python 

 4.2启动前端

 点击蚊虫图片并选择图片,图片就会显示在屏幕中央,点击识别图片就会显示识别结果、置信度以及防治建议,本文只是对虫害进行讲解,可以拓展到农害及其他病害,均适用。

微信识别图片api,笔记,微信小程序,后端,人工智能,python微信识别图片api,笔记,微信小程序,后端,人工智能,python 

 五.源码获取

 看到这里,你是否有所收获呢,创作不易,源码见评论区,点赞+关注+留言支持一下叭~,前面提到的图像识别类型有很多种,可以参考百度AI开放平台,学会一种识别类型,其他的就轻而易举喽,评论区留下你的看法。

 

 

 

到了这里,关于【微信小程序调用百度API实现图像识别实战】----前后端分离的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序 通过百度API接口实现汉译英翻译

    目录 先看一下做出来的效果: 一、微信开发平台的网址(微信开发者工具的官方使用说明) 二、百度API(文本翻译的API) 三、进入正文,微信小程序的代码部分 基础 | 微信开放文档 (qq.com) https://developers.weixin.qq.com/miniprogram/dev/api/   文本翻译_机器翻译-百度AI开放平台 (bai

    2024年02月09日
    浏览(47)
  • 调用百度文心AI作画API实现中文-图像跨模态生成

    乔冠华,女,西安工程大学电子信息学院,2020级硕士研究生,张宏伟人工智能课题组。 研究方向:机器视觉与人工智能。 电子邮件:1078914066@qq.com 文心ERNIE-ViLG,一款适合中文的跨模态AI绘画大模型。 论文地址:https://arxiv.org/pdf/2112.15283.pdf 体验连接:https://wenxin.baidu.com/ern

    2024年02月03日
    浏览(38)
  • 微信小程序调用拨打电话API,实现选择拨打固话或手机号。

    HTML 部分: JavaScipt 部分: (vue中 ,👇这段将写在 methods 里边) 效果 ···  有 固话 且 和 手机号 不相同图片演示:  效果 ···  两个 号码 相同 图片演示:   可根据需求自加判断条件,也可以选择此段代码直接服用。(收藏 关注哟 ♥)

    2024年02月13日
    浏览(30)
  • chrom扩展开发配合百度图像文字识别实现自动登录(后端.net core web api)

    好久没做浏览器插件开发了,因为公司堡垒机,每次登录都要输入账号密码和验证码。太浪费时间了,就想着做一个右键菜单形式的扩展。 实现思路也很简单,在这里做下记录,方便下次开发参考。 manifest.json 也叫清单文件。 先简单看下配置: 上述配置基本包含了插件开发

    2024年02月11日
    浏览(31)
  • 微信小程序 | 小程序系统API调用

    🖥️ 微信小程序专栏:小程序系统API调用 🧑‍💼 个人简介:一个不甘平庸的平凡人🍬 ✨ 个人主页:CoderHing的个人主页 🍀 格言: ☀️ 路漫漫其修远兮,吾将上下而求索☀️ 👉 你的一键三连是我更新的最大动力❤️ 目录 一、网络请求API和封装 网络请求 – API参数 网络请

    2024年02月03日
    浏览(22)
  • 微信小程序 - 调用后台api接口方法

    2024年01月16日
    浏览(34)
  • 微信小程序(四十)API的封装与调用

    注释很详细,直接上代码 上一篇 新增内容: 1.在单独的js文件中写js接口 2.以注册为全局wx的方式调用接口 源码: utils/testAPI.js app.js index.js 效果演示:

    2024年02月20日
    浏览(27)
  • uniapp调用微信小程序人脸识别步骤

    template script

    2024年02月16日
    浏览(25)
  • 微信小程序路由跳转,API调用,页面传值

    wx.switchTab 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面。 wx.reLaunch 关闭所有页面,打开到应用内的某个页面。 wx.redirectTo 关闭当前页面,跳转到应用内的某个页面。但是不能跳转到 tabbar 页面。 wx.navigateTo 保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面

    2024年02月12日
    浏览(31)
  • 【7 微信小程序学习 - 小程序的系统API调用,网络请求封装】

    请求数据,保存数据 需要封装为单独的函数,不然不是异步的 (推荐,可配置不同基础URL的多个实例)

    2024年02月09日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包