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

网站开发的代码建设部网站如何下载文件

网站开发的代码,建设部网站如何下载文件,有没有网址免费的,用返利网站做爆款【简要介绍】 在OpenCVSharp中,FileStorage类用于将数据(包括OpenCV的Mat类型数据)序列化为XML或YAML格式的文件,以及从这些文件中反序列化数据。以下是关于FileStorage类用法的详细说明: 写入数据(序列化…

【简要介绍】

在OpenCVSharp中,FileStorage类用于将数据(包括OpenCV的Mat类型数据)序列化为XML或YAML格式的文件,以及从这些文件中反序列化数据。以下是关于FileStorage类用法的详细说明:

写入数据(序列化)

  1. 创建FileStorage对象
    使用FileStorage类的构造函数创建一个新的FileStorage对象,并指定文件名和模式(写入或读取)。

     

    csharp复制代码

    FileStorage fs = new FileStorage("output.xml", FileStorage.Mode.Write);
  2. 写入数据
    使用Write方法将数据写入文件。对于基本数据类型(如intfloatstring),可以直接写入。对于Mat类型的数据,需要指定一个名称作为键。

     

    csharp复制代码

    fs.Write("int_value", 123);
    fs.Write("float_value", 3.14f);
    fs.Write("mat_name", myMat); // 假设myMat是一个Mat对象
  3. 释放资源
    在写入完成后,使用Release方法释放FileStorage对象占用的资源。

     

    csharp复制代码

    fs.Release();

读取数据(反序列化)

  1. 创建FileStorage对象
    与写入类似,但这次需要指定模式为读取。

     

    csharp复制代码

    FileStorage fs = new FileStorage("output.xml", FileStorage.Mode.Read);
  2. 读取数据
    使用索引器[]通过键名来访问数据。对于Mat类型的数据,可以直接将其转换为Mat对象。

     

    csharp复制代码

    int intValue = (int)fs["int_value"];
    float floatValue = (float)fs["float_value"];
    Mat loadedMat = (Mat)fs["mat_name"];

    注意:键名(如"int_value"、"float_value"、"mat_name")必须与写入时使用的名称一致。

  3. 释放资源
    在读取完成后,同样需要释放资源。

     

    csharp复制代码

    fs.Release();

注意事项

  • 在使用FileStorage时,需要确保在读取或写入过程中不要出现错误,否则可能会导致数据丢失或文件损坏。
  • 对于复杂的数据结构(如包含多个Mat对象的列表或字典),可能需要使用更复杂的序列化策略。
  • 在处理大量数据时,需要注意内存管理和性能问题,确保应用程序的稳定性和响应性。

序列化和反序列化Mat对象

对于Mat对象,OpenCVSharp提供了直接的序列化和反序列化方法。这意味着你可以直接将Mat对象写入文件,然后再从文件中读取回来,而无需手动处理每个像素值。这在处理图像数据时非常有用,因为它可以大大简化数据的存储和传输过程。

【界面展示】

【实现意义】

序列化和反序列化可以将图像数据存储为特定格式作为分析使用,格式化输出则有利于对图像数据进行肉眼分析。

【实现代码】

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using OpenCvSharp;namespace FIRC
{public partial class Form1 : Form{Mat src = new Mat();public Form1(){InitializeComponent();}private void button1_Click(object sender, EventArgs e){OpenFileDialog openFileDialog = new OpenFileDialog();openFileDialog.Filter = "图文件(*.*)|*.jpg;*.png;*.jpeg;*.bmp";openFileDialog.RestoreDirectory = true;openFileDialog.Multiselect = false;if (openFileDialog.ShowDialog() == DialogResult.OK){src = Cv2.ImRead(openFileDialog.FileName);pictureBox1.Image = OpenCvSharp.Extensions.BitmapConverter.ToBitmap(src);}}private void button2_Click(object sender, EventArgs e){if(pictureBox1.Image==null){return;}FileStorage fileStorage = new FileStorage("image.data", FileStorage.Modes.Write);fileStorage.Write("image", src);fileStorage.Release();}private void Form1_Load(object sender, EventArgs e){}private void button3_Click(object sender, EventArgs e){if(File.Exists("image.data")){FileStorage fileStorage = new FileStorage("image.data", FileStorage.Modes.Read);Mat resultMat = fileStorage["image"].ToMat();pictureBox2.Image = OpenCvSharp.Extensions.BitmapConverter.ToBitmap(resultMat); //Mat转Bitmap}}private void button4_Click(object sender, EventArgs e){if (pictureBox1.Image == null){return;}//Console.WriteLine(src.ToString());Console.WriteLine(Cv2.Format(src,FormatType.NumPy));//Console.WriteLine(Cv2.Format(src, FormatType.CSV));//Console.WriteLine(Cv2.Format(src, FormatType.MATLAB));//Console.WriteLine(Cv2.Format(src, FormatType.Python));}}
}

【测试环境】

vs2019

netframework4.7.2

opencvsharp4.8.0

【源码下载】

https://download.csdn.net/download/FL1623863129/89450629

http://www.yayakq.cn/news/348364/

相关文章:

  • 无锡自助建站软件销售型公司
  • 做网站用别人的图片深圳福田住房和建设局网站
  • 相城苏州网站建设网站用哪些系统做的好处
  • 甘南网站建设公司网站制作有哪些注意事项
  • 大型门户网站设计公司微信抽奖小程序
  • 网站建设方法叁金手指下拉丶长沙装修公司有哪些
  • 个人网站的留言板数据库怎么做自己注册网站要多少钱
  • 网站续费问题搭建商城网站
  • 电商网站建设的相关内容百度站长之家工具
  • 高品质网站开发app需要申请网站的子域名吗
  • 哪些网站做的好处官方网站的优势
  • 南昌自助建站专门做眼镜的国外网站
  • 为农村建设网站报告做群头像的网站在线制作
  • wordpress 免费建站网站建设jw100
  • 天津正规制作网站公司推广注册app拿佣金平台
  • 客户问 你们网站怎么做的网站建设公司薪资
  • 要加强网站内容的建设免费注册公司名字大全
  • 六枝特区建设局网站临清网站建设费用
  • 龙岗做网站多少钱大型网站 空间
  • 简易的网站知乎做笔记的网站
  • 网站版面做得好的网站建设推广99元
  • 织梦城市门户网站模板深圳网站建设公司地址
  • 制作一个网站的全过程网站建设 开票
  • 2015做哪个网站致富有了源码然后如何做网站
  • 找别人做网站的注意事项网站一级页面二级页面怎么做
  • 永城房产网厦门关键词排名优化
  • 净化科技网站建设唐山网站搭建
  • 网站备案找回密码性价比高的域名备案加急
  • 免费网站在哪里申请表网站制作什么做
  • 郑州网站公司排名网站开发模式分为