新浦京81707con > 首页 > image控件闪屏

原标题:image控件闪屏

浏览次数:91 时间:2019-11-07

wpf显示录制,image控件闪屏,使用winform控件实现,wpfwinform

使用C#调用mingw的动态库完结录制辨认软件,程序通过C 调用opencv张开摄像,将图像的原有数据以rgb24的形式传送给C#端,C#通过结构图像对象给控件赋值的点子浮现图片。

一齐头采纳wpf的控件image:

 1 while (true)
 2 {
 3     S_IMG simg = Mingw.display(); //调用取图像函数
 4     int size = simg.w * simg.h * 3;
 5     byte[] data = new byte[size];
 6     Marshal.Copy(simg.pbuf, data, 0, size);
 7     Dispatcher.Invoke((EventHandler)delegate
 8     {
 9         WriteableBitmap bitmap = new WriteableBitmap(simg.w, simg.h, 100, 100, PixelFormats.Rgb24, null);
10         bitmap.WritePixels(new Int32Rect(0, 0, simg.w, simg.h), data, simg.w * 3, 0);
11         img1.Source = bitmap;
12         BitmapEncoder encoder = new JpegBitmapEncoder();
13         encoder.Frames.Add(BitmapFrame.Create(bitmap));
14         encoder.Save(new System.IO.FileStream(pics.ToString() ".jpg", System.IO.FileMode.Create));
15         pics  ;
16     }, new object[2]);
17 }

内部img1是图像控件。

此措施突显录制时,假设帧率过高(测量检验时展开了一个AVI文件,读取帧的时候没有延时卡塔 尔(英语:State of Qatar)则图像会闪黑屏。一最早难以置信是C 部分程序八线程同步难点,后来投入了第12~15行代码,将C#抽取的图像保存下来,结果图片完全没难题,就是image控件展现时现身了黑屏状态。经调节和测验无效后,决定使用winform的图像控件。

率先在工程中引用:

  System.Windows.Froms

  WindowsFormsIntegration

然后在xaml中添加:

澳门新莆京娱乐,  xmlns:wfi="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"

  xmlns:wf="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"

在控件处增加:

  <WindowsFormsHost Name="windowsFormsHost1" Grid.Row="1" Grid.Column="0">
    <wf:PictureBox Name="picturebox1"/>
  </WindowsFormsHost>

在C#代码中丰盛:

  public System.Windows.Forms.PictureBox picb1;

开始化时拉长:

  picb1 = windowsFormsHost1.Child as System.Windows.Forms.PictureBox;

显示代码:

1 while (true)
2 {
3     S_IMG simg = Mingw.display(); //调用取图像函数
4     Dispatcher.Invoke((EventHandler)delegate
5     {
6         System.Drawing.Bitmap bitmap=new Bitmap(simg.w,simg.h,simg.w*3,System.Drawing.Imaging.PixelFormat.Format24bppRgb,simg.pbuf);
7         picb1.Image=bitmap;
8     }, new object[2]);
9 }

就不闪了,代码也安适多了。但是wpf和winform的图像像素格式是反的,分不清哪个是凯雷德GB哪个是BG路虎极光了。

 

使用C#调用mingw的动态库达成录像辨认软件,程序通过C 调用opencv张开录制,将图...

本文由新浦京81707con发布于首页,转载请注明出处:image控件闪屏

关键词: 新浦京81707con

上一篇:Spring开发环境搭建小试,项目目录结构

下一篇:没有了