探索使用spyder或者vscode查看和修改代码(口罩佩戴识别项目)

本文介绍了如何使用Spyder或VSCode打开并理解Tensorflow项目代码,特别是tenforflow_infer.py文件。内容涵盖模块加载、模型结构与权重、函数解释,如NMS算法和图像处理等。还提到了Anaconda Navigator中的Spyder安装、代码注释、参数解析以及函数定义等编程基础知识。
摘要由CSDN通过智能技术生成

这次先看tenforflow_infer.py

1.打开anaconda navigator>打开spyder(记得装)
2.file>open>选择目录>打开.py文件
3.初步分块理解代码

import cv2
import time
import argparse

加载一些模块。其中cv2模块的用法参考:https://www.cnblogs.com/shizhengwen/p/8719062.html

import numpy as np
from PIL import Image
from keras.models import model_from_json
from utils.anchor_generator import generate_anchors
from utils.anchor_decode import decode_bbox
from utils.nms import single_class_non_max_suppression
from load_model.tensorflow_loader import load_tf_model, tf_inference

*1 NumPy函数库是Python开发环境的一个独立模块,是Python的一种开源的数值计算扩展工具。import numpy as np即导入函数库
*2 from……import含义是 把一个模块中所有函数都导入进来
所以是把PIL模块里的Image函数导进来
*3 模型的权重保存在HDF5中/模型的结构保存在JSON文件或者YAML文件中
model.to_json() 以 JSON 字符串的形式返回模型的表示(Keras提供了to_json()生成模型JSON描述,并将模型的JSON描述保存到文件中)。请注意,该表示不包括权重,仅包含结构。
反序列化时候,通过model_from_json()函数加载模型描述,编译生成模型
*4 generate_anchors函数的功能对应faster R-CNN中anchors 的生成
https://zhuanlan.zhihu.com/p/102978748?utm_source=wechat_session参考资料
因为SSD算法借鉴Faster R-CNN算法的Anchor机制,所以这里导入该函数
*5 待理解从名字上看应该是Default box的 计算
*6 后处理使用NMS,应该是非最大值抑制算的有关函数
*7涉及模块的加载与保存
具体函数的作用应该要去查看每个源代码才能得知,这个一步步来,所有要用到的代码都在子目录下
在这里插入图片描述

sess, graph = load_tf_model('models/face_mask_detection.pb')
# anchor configuration
feature_map_sizes = [[33, 33], [17, 17], [9
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值