当前位置: 首页 > article >正文

深度学习框架tensorflow

深度学习

深度学习、强化学习的底层都是神经网络架构。 但是他比机器学习高的地方在于自动化,

他帮你省事,不用从头去构建 神经网络架构 他基于机器学习, 所以深度学习一定是框架。

框架帮你写一些机器学习基础的东西。

违规图片识别

(进行了改进 使用深度学习框架 tensorflow )

tensorflow 国歌开源的

第三方也提供了响应的接口 比如 百度云、 腾讯云 、 阿里云 、但是这些接口每次调用是需要收费的

由于 公司预算不足。 我们选择自研应用,自己造轮子

虽然解决了OpenCV的线性问题,但是他也存在一定是缺陷: 问题在于多元素识别有问题,就是一张原始诊图出现很多元素,很难识别,精细化识别要对图片进行裁剪。

具体流程:和OpenCV一样: 第一步先加载图像 区别是后面就是为深度学习做数据量的处理, 然后转化为特征矩阵,再转换形状,然后转化为向量也就是张量(张量就是把图像的像素或因素转化为0到1之间的浮点数,因为他要计算),然后加载模型我们没有走模型训练这一步原因是:需要输入大量的物体的特征,这个数据没必要搞,因为我们有现成的模型: imagenet 神经网络图形,他列属于ResNet50  的这个库( 这个数据集包含超过 100 万张图片)。 加载后模型之后就可以进行预测,我们需要转换标签 (将矩阵的计算结果 和 实际的物品标签进行匹配) 即可展示识别结果。

import os
import PIL.Image
import numpy as np
import tensorflow as tf
import re

from machine_learning.img_react import Vido_


def predict_images(image_paths):
    # 加载模型
    model = tf.keras.applications.ResNet50(include_top=True, weights='imagenet')

    # 转化为人能理解的标签
    labels_path = '../machine_learning/labels.txt'
    with open(labels_path) as f:
        labels = f.read().splitlines()

    results = []

    # 循环读取每张图片并进行预测
    for image_path in image_paths:
        # 打开图片
        image = PIL.Image.open(image_path)

        # 转换为矩阵
        image_array = np.array(image.convert("RGB"))

        # 将矩阵转换为相同形状
        image_array = tf.image.resize(image_array, size=(224, 224))

        # 转化为张量
        image_tensor = tf.convert_to_tensor(image_array)

        # 修改形状
        image_tensor = tf.expand_dims(image_tensor, axis=0)

        # 预测
        predictions = model.predict(image_tensor)

        # 获取预测结果的标签
        result_label = labels[np.argmax(predictions)]

        # 将本次预测结果添加到总结果列表中
        results.append(result_label)
    return results


http://www.kler.cn/a/14024.html

相关文章:

  • 基于Yolov5/Yolov7微小目标检测---上下文信息CAM,微小目标涨点明显
  • ChatGPT4 的体验 一站式 AI工具箱 -—Poe(使用教程)
  • c++11 标准模板(STL)(std::priority_queue)(一)
  • 招商银行fintech 2021年机试
  • 面向对象(一)--基础知识
  • MYSQL数据库为何使用B+树,而不使用红黑树,二叉树作为索引
  • Algo C++:课程介绍
  • 玄武科技面试题
  • day17_异常
  • 中国人民大学与加拿大女王大学金融硕士——学习的阶段让未来的人生更丰盈
  • Leetcode力扣秋招刷题路-0664
  • 【MySQL】索引事务
  • 电商系统架构设计系列(一):电商系统到底是如何设计出来的?
  • 【观察】华为:新一代楼宇网络,使能绿建智慧化
  • WEB通讯技术。前端实现SSE长连接,nodejs+express搭建简单服务器,进行接口调试,通过curl请求数据
  • SQL学习(十)--DML_多表查询(针对数据表记录的join查询、子查询的操作)
  • css初入门:网页布局之网格布局-grid
  • P1032 [NOIP2002 提高组] 字串变换
  • 依赖自动装配
  • c++ 对类与对象的基础框架+完整思维导图+基本练习题+深入细节+通俗易懂建议收藏