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

access2003做网站wordpress新建文章随机一个阅读量

access2003做网站,wordpress新建文章随机一个阅读量,wordpress缓存优化,淘宝网店代运营目录 一、下载 三、开始训练 train.py detect.py export.py 超参数都在这个路径下 四、C#读取yolov10模型进行部署推理 如下程序是用来配置openvino 配置好引用后就可以生成dll了 再创建一个控件#xff0c;作为显示 net framework 4.8版本的 再nuget工具箱里下载 …目录 一、下载 三、开始训练 train.py detect.py export.py 超参数都在这个路径下 四、C#读取yolov10模型进行部署推理 如下程序是用来配置openvino 配置好引用后就可以生成dll了  再创建一个控件作为显示 net framework 4.8版本的 再nuget工具箱里下载 opencvsharp4  以及openvino  然后主流程代码 效果 我的yolov10 训练源码 C#部署yolov10源码 一、下载 GitHub - THU-MIG/yolov10: YOLOv10: Real-Time End-to-End Object Detection 或者你可以再浏览器搜索框里直接搜索      yolov10 github 二、环境配置  下载anaconda 并安装 在网上随意下载一个2022版本的就行 yolov10和yolov8的文件结构差不多  所以如果你训练过其他的yolov5以上的yolo你可以直接拷贝环境进行使用当然你如果想配置gpu    就需要cuda  cudnn  和 gpu版本的torch     其他的直接pip install 即可 pip install requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple下方网站中下载你需要的版本下载时要注意对应关系 cuda和cudnn各个版本的Pytorch下载网页版onnxncnnpt模型转化工具_cuda国内镜像下载网站-CSDN博客 也可以看我另一篇文章 Yolov10训练转化onnx推理_yolov10转onnx-CSDN博客 三、开始训练 有一点要注意v10版本其实是从v8版本上面改的 所以v10的预训练模型你需要自行下载  否则就会下载成v8的 首先标注数据集  在pycharm 中下载labelimg pip install labelimg -i https://pypi.tuna.tsinghua.edu.cn/simple下载好后直接在终端输入labelimg 开始标注 训练流程基本和yolov5差不多 在yolov10的根目录下创建一个名为data的文件夹 里面再创建一个data.yaml文件 用于数据集的读取 再在根目录创建三个py文件  分别是  train.py  detect.py    export.py train.py from ultralytics import YOLOv10model_yaml_path ultralytics/cfg/models/v10/yolov10s.yaml #数据集配置文件 data_yaml_path data/data.yaml #预训练模型 pre_model_name yolov10s.ptif __name__ __main__:#加载预训练模型model YOLOv10(model_yaml_path).load(pre_model_name)#训练模型results model.train(datadata_yaml_path,epochs450,batch8,device0,nametrain/exp)# yolo export modelH:\\DL\\yolov10-main\\runs\\detect\\train\\exp\\weights\\best.pt formatonnx opset13 simplify detect.py from ultralytics import YOLOv10import torch if torch.cuda.is_available():device torch.device(cuda) else:raise Exception(CUDA is not)model_path rH:\\DL\\yolov10-main\\runs\\detect\\train\\exp4\\weights\\best.pt model YOLOv10(model_path) results model(sourcerH:\DL\yolov10-main\dataDakeset\two_CD_double\test,namepredict/exp,conf0.45,saveTrue,device0)export.py from ultralytics import YOLOv10 modelYOLOv10(H:\\DL\\yolov10-main\\runs\\detect\\train\\exp\\weights\\best.pt)model.export(formatonnx)# torchscript, onnx, openvino, engine, coreml, saved_model, pb, tflite, edgetpu, tfjs, paddle超参数都在这个路径下 然后设置好参数就可以直接训练了 推理用detect.py 推理   转化用export.py 转化 转化为哪种模型 就替换即可 四、C#读取yolov10模型进行部署推理 我们需要设定yolov10的模型结构 using OpenCvSharp; using OpenVinoSharp.Extensions.result; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace Yolov10_DLLnet {public class YOLOv10Det : YOLO{public YOLOv10Det(string model_path, string engine, string device, int categ_nums, float det_thresh, float det_nms_thresh, int input_size): base(model_path, engine, device, categ_nums, det_thresh, det_nms_thresh, new int[] { 1, 3, input_size, input_size },new Liststring { images }, new Listint[] { new int[] { 1, 4 categ_nums, 8400 } }, new Liststring { output0 }){}protected override BaseResult postprocess(Listfloat[] results){ListRect positionBoxes new ListRect();Listint classIds new Listint();Listfloat confidences new Listfloat();// Preprocessing output resultsfor (int i 0; i results[0].Length / 6; i){int s 6 * i;if ((float)results[0][s 4] 0.5){float cx results[0][s 0];float cy results[0][s 1];float dx results[0][s 2];float dy results[0][s 3];int x (int)((cx) * m_factor);int y (int)((cy) * m_factor);int width (int)((dx - cx) * m_factor);int height (int)((dy - cy) * m_factor);Rect box new Rect();box.X x;box.Y y;box.Width width;box.Height height;positionBoxes.Add(box);classIds.Add((int)results[0][s 5]);confidences.Add((float)results[0][s 4]);}}DetResult re new DetResult();// for (int i 0; i positionBoxes.Count; i){re.add(classIds[i], confidences[i], positionBoxes[i]);}return re;}} }然后再设置各项参数 你可以再其中自己定义一个文件 里面写上你需要的类  比如置信度类别  以及类别数量等等。为后续的dll生成做准备。 如下程序是用来配置openvino using OpenCvSharp.Dnn; using OpenCvSharp; using OpenVinoSharp; using System; using System.Collections.Generic; using System.Linq; using System.Runtime.InteropServices; using System.Text; using System.Threading.Tasks; using System.Reflection; //using static System.Windows.Forms.Design.AxImporter;namespace Yolov10_DLLnet {public class Predictor : IDisposable{private Core core;private Model model;private CompiledModel compiled;private InferRequest openvino_infer;private Net opencv_infer;private string engine null;public Predictor() { }public Predictor(string model_path, string engine, string device){if (model_path null){throw new ArgumentNullException(nameof(model_path));}this.engine engine;if (engine OpenVINO){core new Core();model core.read_model(model_path);compiled core.compile_model(model, device);openvino_infer compiled.create_infer_request();}}public void Dispose(){openvino_infer.Dispose();compiled.Dispose();model.Dispose();core.Dispose();GC.Collect();}public Listfloat[] infer(float[] input_data, Liststring input_names, int[] input_size, Liststring output_names, Listint[] output_sizes){Listfloat[] returns new Listfloat[]();var input_tensor openvino_infer.get_input_tensor();input_tensor.set_data(input_data);openvino_infer.infer();foreach (var name in output_names){var output_tensor openvino_infer.get_tensor(name);returns.Add(output_tensor.get_datafloat((int)output_tensor.get_size()));}return returns;}} }创建一个名为yolo的cs文件用于 将yolov10模型结构做引用 //using Microsoft.VisualBasic.Logging; using OpenCvSharp; using OpenVinoSharp.Extensions.model; using OpenVinoSharp.Extensions.process; using OpenVinoSharp.Extensions.result; using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Text; using System.Threading.Tasks; //using Yolov10_DLLnet; using static OpenVinoSharp.Node;namespace Yolov10_DLLnet {public class YOLO : IDisposable{protected int m_categ_nums;protected float m_det_thresh;protected float m_det_nms_thresh;protected float m_factor;protected int[] m_input_size;protected Listint[] m_output_sizes;protected Liststring m_input_names;protected Liststring m_output_names;protected Listint m_image_size new Listint();private Predictor m_predictor;Stopwatch sw new Stopwatch();public YOLO(){m_predictor new Predictor();}public YOLO(string model_path, string engine, string device, int categ_nums, float det_thresh,float det_nms_thresh, int[] input_size, Liststring input_names, Listint[] output_sizes, Liststring output_names){m_predictor new Predictor(model_path, engine, device);m_categ_nums categ_nums;m_det_thresh det_thresh;m_det_nms_thresh det_nms_thresh;m_input_size input_size;m_output_sizes output_sizes;m_input_names input_names;m_output_names output_names;}float[] preprocess(Mat img){m_image_size new Listint { (int)img.Size().Width, (int)img.Size().Height };Mat mat new Mat();Cv2.CvtColor(img, mat, ColorConversionCodes.BGR2RGB);mat Resize.letterbox_img(mat, (int)m_input_size[2], out m_factor);mat Normalize.run(mat, true);return Permute.run(mat);}Listfloat[] infer(Mat img){Listfloat[] re;float[] data preprocess(img);re m_predictor.infer(data, m_input_names, m_input_size, m_output_names, m_output_sizes);return re;}public BaseResult predict(Mat img){Listfloat[] result_data infer(img);BaseResult re postprocess(result_data);return re;}protected virtual BaseResult postprocess(Listfloat[] results){return new BaseResult();}public void Dispose(){m_predictor.Dispose();}public static YOLO GetYolo(string model_type, string model_path, string engine, string device,int categ_nums, float det_thresh, float det_nms_thresh, int input_size){return new YOLOv10Det(model_path, engine, device, categ_nums, det_thresh, det_nms_thresh, input_size);}protected static float sigmoid(float a){float b 1.0f / (1.0f (float)Math.Exp(-a));return b;}} }配置好引用后就可以生成dll了  再创建一个控件作为显示 net framework 4.8版本的 再nuget工具箱里下载 opencvsharp4  以及openvino  然后主流程代码 //using Microsoft.VisualBasic.Logging; using OpenCvSharp; using OpenVinoSharp.Extensions.process; using OpenVinoSharp.Extensions.result; using OpenVinoSharp.Extensions.utility; using SharpCompress.Common; using System.Collections.Generic; using System; using System.Diagnostics; using System.Runtime.CompilerServices; using System.Windows.Forms; using static OpenVinoSharp.Node; using static System.Windows.Forms.VisualStyles.VisualStyleElement; using Point OpenCvSharp.Point;using Yolov10_DLLnet; using System.Drawing; using ZstdSharp.Unsafe;namespace YOLOV10_WinformDemo {public partial class Form1 : Form{//string filePath ;private YOLO yolo;public Form1(){InitializeComponent();yolo new YOLO();//string model_path best_0613.onnx;}/// summary/// yolov10 onnx模型文件路径/// /summaryprivate string model_path H:\\YCDandPCB_Yolov5_net\\Yolov10_and_Yolov5Seg\\yolov10_Detztest\\YOLOV10_WinformDemo\\bestV10det.onnx;/// summary/// 开始识别/// /summary/// param namesender/param/// param namee/paramprivate void button2_Click(object sender, EventArgs e){Stopwatch sw new Stopwatch();OpenFileDialog openFile new OpenFileDialog();string filePath ;if (openFile.ShowDialog() DialogResult.OK){filePath openFile.FileName;}//目标检测//string model_path best_0613.onnx;classesLabel label new classesLabel();string model_type YOLOv10Det;string engine_type OpenVINO;string device CPU;//################# 阈值 #######################################float score label.Score_Threshold;float nms label.NMS_Threshold;int categ_num label.classes_count_1;int input_size label.W_H_size_1;yolo YOLO.GetYolo(model_type, model_path, engine_type, device, categ_num, score, nms, input_size);//##################### 图片推理阶段 #######################//System.Drawing.Image image Image.FromFile(openFile.FileName);//string input_path openFile;Mat img Cv2.ImRead(filePath);pictureBox1.Image OpenCvSharp.Extensions.BitmapConverter.ToBitmap(img);sw.Restart();(Mat, BaseResult) re_img image_predict(img);sw.Stop();pictureBox2.Image OpenCvSharp.Extensions.BitmapConverter.ToBitmap(re_img.Item1);DetResult detResult re_img.Item2 as DetResult;for (int i 0; i detResult.count; i){//textBox1.Text detResult.datas[i].lable;//置信度//textBox2.Text detResult.datas[i].score.ToString(0.00);int X detResult.datas[i].box.TopLeft.X;int Y detResult.datas[i].box.TopLeft.Y;int W detResult.datas[i].box.Width;int H detResult.datas[i].box.Height;//textBox3.Text X.ToString();//textBox4.Text Y.ToString();//textBox5.Text W.ToString();//textBox6.Text H.ToString();Console.WriteLine(X);Console.WriteLine(Y);}// 获取并打印运行时间//TimeSpan ts sw.Elapsed;textBox7.Text sw.ElapsedMilliseconds.ToString();}(Mat, BaseResult) image_predict(Mat img, bool is_video false){Mat re_img new Mat();//############################# classes ###################################classesLabel label new classesLabel();Liststring class_names label.class_names;//开始识别并返回识别结果BaseResult result yolo.predict(img);result.update_lable(class_names);re_img Visualize.draw_det_result(result, img);return (re_img, result);}} }效果 我的yolov10 训练源码 【免费】yolov10优化代码包含train.py,detect.py,export.py脚本以及预训练模型资源-CSDN文库 C#部署yolov10源码 C#部署YoloV10目标检测.netframework4.8,打开即用内有主程序和dll生成程序资源-CSDN文库
http://www.hkea.cn/news/14442804/

相关文章:

  • 做家教用什么网站成都论坛网站建设
  • 北京上云网站建设公司成都注册公司需要什么材料和手续
  • 深圳搭建p2p网站网站建设作业百度云资源
  • 和田网站制作dw网页制作上机试题
  • 临沂 网站建设wordpress添加海报分享功能
  • centos 网站搭建网站推广南京公司
  • 网站高端定制seo网站优化论文
  • 石家庄网站建设培训班南阳商都网站做网站
  • 个人网站免费制作平台公司logo背景墙设计效果图
  • 乐清建设网站哪家好中国空间站有哪些国家加入
  • 湛江市建设局官方网站仿新浪首页网站模板
  • 官方网站手机 优帮云飞狐小说网站建设
  • 文昌网站建设怎么样推广自己的网址
  • 如何高效建设品牌网站?网站制作复杂吗
  • 如何在淘宝客上做自己的网站个人域名用来做淘宝客网站
  • 西安培训网站建设现代感的传媒公司名称
  • 网站背景居中怎么做公司做网站要多少钱
  • 做兼职哪个网站比较好网站建设费用摊销多少年
  • 网站前台与后台建设的先后次序电子商务网站建设臧良运课后答案
  • 绥中做网站公司南京家具网站建设
  • 网站方案设计与论证计算机专业网页毕业设计
  • 网站的建设项目是什么意思谷歌浏览器引擎入口
  • 陕西省交通集团建设网站软件开发工资怎么样
  • 聊城网站推广百度海南分公司
  • 怎么做链接网站土建网招聘信息
  • 兰州网站设计公司哪家最好手机网站左右滑动效果
  • 把网站放到服务器上做网投网站
  • 网站访问量统计代码怎么做进下加强新闻宣传网站建设
  • 百度网站联盟推广一站式服务英文
  • 表格网站怎么做的成都网站建设公司好做吗