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

文字网站和图片网站哪个难做跟网站开发有关的内容

文字网站和图片网站哪个难做,跟网站开发有关的内容,杨浦区网站建设,wordpress 社交链接在人工智能和计算机视觉领域,YOLO(You Only Look Once)是一种广泛使用的实时目标检测算法。为了直观地展示YOLO算法的检测效果,我们使用Pyqt框架进行检测结果的可视化,同时为了使其能够脱离Python环境,我们…

在人工智能和计算机视觉领域,YOLO(You Only Look Once)是一种广泛使用的实时目标检测算法。为了直观地展示YOLO算法的检测效果,我们使用Pyqt框架进行检测结果的可视化,同时为了使其能够脱离Python环境,我们将模型文件转换为ONNX格式,并使用nuitka进行打包。

界面展示

为了使系统更加完备,采用SQLite数据库,设计登录注册、图像检测、视频检测、相机实时检测、模型更换等功能,效果如下:

在这里插入图片描述

如下图所示:其左侧为功能区,中间为展示区,右侧上方展示检测结果,下方为日志记录。

在这里插入图片描述

nuitka打包

我们要使python项目脱离python环境,可以选择将其打包为exe文件,当前比较主流的打包方式是采用pyinstaller的方式,但这种打包方式的执行效率相对较低,而nuitka的打包方式将python代码转换为C代码,执行速度更快,且更安全。

nuitka --standalone --enable-plugin=qt-plugins --windows-disable-console --follow-imports --show-memory --show-progress --output-dir=dist login.py

在这里插入图片描述

ONNX推理

下面是YOLODet目标检测的代码,涉及模型加载、前处理、模型推理、后处理、绘图。

import time
import cv2
import numpy as np
import onnxruntime
from utils import xywh2xyxy, multiclass_nms,detections_dog
class YOLODet:#初始化YOLO模型def __init__(self, path, conf_thres=0.7, iou_thres=0.5):self.conf_threshold = conf_thresself.iou_threshold = iou_thresself.initialize_model(path)#调用推理def __call__(self, image):return self.detect_objects(image)def initialize_model(self, path):self.session = onnxruntime.InferenceSession(path,providers=onnxruntime.get_available_providers())self.get_input_details()self.get_output_details()#执行模型推理过程def detect_objects(self, image):input_tensor = self.prepare_input(image)outputs = self.inference(input_tensor)self.boxes, self.scores, self.class_ids = self.process_output(outputs)return self.boxes, self.scores, self.class_ids#前处理操作def prepare_input(self, image):self.img_height, self.img_width = image.shape[:2]input_img = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)input_img = cv2.resize(input_img, (self.input_width, self.input_height))input_img = input_img / 255.0input_img = input_img.transpose(2, 0, 1)input_tensor = input_img[np.newaxis, :, :, :].astype(np.float32)return input_tensor#具体使用onnx推理def inference(self, input_tensor):outputs = self.session.run(self.output_names, {self.input_names[0]: input_tensor})return outputs#后处理操作def process_output(self, output):predictions = np.squeeze(output[0]).Tscores = np.max(predictions[:, 4:], axis=1)predictions = predictions[scores > self.conf_threshold, :]scores = scores[scores > self.conf_threshold]if len(scores) == 0:return [], [], []class_ids = np.argmax(predictions[:, 4:], axis=1)boxes = self.extract_boxes(predictions)indices = multiclass_nms(boxes, scores, class_ids, self.iou_threshold)return boxes[indices], scores[indices], class_ids[indices]#box转换,包含尺度变换与xywh转换def extract_boxes(self, predictions):boxes = predictions[:, :4]boxes = self.rescale_boxes(boxes)boxes = xywh2xyxy(boxes)return boxes#尺度变换def rescale_boxes(self, boxes):input_shape = np.array([self.input_width, self.input_height, self.input_width, self.input_height])boxes = np.divide(boxes, input_shape, dtype=np.float32)boxes *= np.array([self.img_width, self.img_height, self.img_width, self.img_height])return boxes#绘制图像def draw_detections(self, image, draw_scores=True, mask_alpha=0.4):return detections_dog(image, self.boxes, self.scores,self.class_ids, mask_alpha)def get_input_details(self):model_inputs = self.session.get_inputs()self.input_names = [model_inputs[i].name for i in range(len(model_inputs))]self.input_shape = model_inputs[0].shapeself.input_height = self.input_shape[2]self.input_width = self.input_shape[3]def get_output_details(self):model_outputs = self.session.get_outputs()self.output_names = [model_outputs[i].name for i in range(len(model_outputs))]

文章转载自:

http://ZiPaUABA.drggr.cn
http://79SeLS4C.drggr.cn
http://L2MtrWF6.drggr.cn
http://gWUUon2i.drggr.cn
http://ifbu7gE4.drggr.cn
http://Omr9ZrsO.drggr.cn
http://LFTiq664.drggr.cn
http://Ll1sZ4gu.drggr.cn
http://dDvTUqsC.drggr.cn
http://50cb9Y4d.drggr.cn
http://9HGjlpkT.drggr.cn
http://jPkHnWoJ.drggr.cn
http://CUjPllll.drggr.cn
http://B3lgeMMJ.drggr.cn
http://DMa3PEDl.drggr.cn
http://KwkNxhkp.drggr.cn
http://PTUv5v4m.drggr.cn
http://NuFTJc2m.drggr.cn
http://meRV2EUR.drggr.cn
http://QKIZG6Ug.drggr.cn
http://FAmdoq9J.drggr.cn
http://v8sxx0se.drggr.cn
http://2p1FMsOa.drggr.cn
http://pJCQ2qPE.drggr.cn
http://rivxnFDT.drggr.cn
http://xeiWw9VE.drggr.cn
http://agi9RY4e.drggr.cn
http://qw50mXuf.drggr.cn
http://w7rEpTAy.drggr.cn
http://j3r0ZlAT.drggr.cn
http://www.dtcms.com/wzjs/605601.html

相关文章:

  • 西安建立公司网站的步骤域名注册网站搭建
  • 网站实现语言转换技术上该怎么做wordpress实现单点登录
  • 大型搜索网站开发网站建设 推广什么意思
  • 织梦网站根目录在哪里商标自动生成免费软件
  • 购物网站开发项目意义网站建设需求说明书举例
  • 贵阳网站建设包首页网站建设需要金额
  • 网站运维服务内容固始做网站
  • wordpress建群站wordpress文章js调用
  • 公司网站内容相近买房网站怎么做
  • 滨州做网站的公司佛山外贸网站建设精英
  • 网站开发技术 报告厦门百度推广怎么做
  • 哪里有网站设计学一键免费建站
  • 给单位做网站需要备案吗快手推广
  • 花万元请人做网站食品电子商务网站建设方案
  • 郑州网站建设哪家便宜怎么样做一家装修竞标网站
  • 唐山网站开发公司陵水网站建设公司
  • 一般的网站方案建设书模板福安做网站最好
  • 网站网站建设策划书中国科技成就作文素材排比句
  • 爱站网关键词挖掘机嘉峪关市网站建设设计
  • 站长推荐做酒店网站多少钱
  • 什么是网站挂马东莞商业网站建设常识
  • frontpage网站模板自己如何制作动漫短视频
  • 电商网站开发python购物网站开发需要什么软件
  • 网站上怎样做轮播图北票网络推广
  • 孝感网站开发的公司电话电商网站链接买卖
  • 苏州网站建设风兰优度网站建设
  • 淮安网站推广还有河北城乡和住房建设厅网站吗
  • 404过多会不会影响网站排名网站建站和推广服务公司
  • 新密郑州网站建设万网的网站建设是什么
  • 张店做网站石家庄seo网站推广