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

python 开发手机网站开发包装设计说明模板

python 开发手机网站开发,包装设计说明模板,互联网行业数据分析,阜新小程序 阜新网站建设开发WPF开发者QQ群此群已满340500857 #xff0c;请加新群458041663由于微信群人数太多入群请添加小编微信号yanjinhuawechat 或 W_Feng_aiQ 邀请入群需备注WPF开发者 PS#xff1a;有更好的方式欢迎推荐。接着上一篇利用已经训练好的数据文件,检测人脸 地址如下#xff1a;http… WPF开发者QQ群此群已满340500857 请加新群458041663       由于微信群人数太多入群请添加小编微信号 yanjinhuawechat 或 W_Feng_aiQ 邀请入群 需备注WPF开发者   PS有更好的方式欢迎推荐。  接着上一篇  利用已经训练好的数据文件,检测人脸 地址如下  https://github.com/opencv/opencv/tree/master/data/haarcascades使用NuGet如下01—代码如下一、创建MainWindow.xaml代码如下。ws:Window x:ClassOpenCVSharpExample.MainWindowxmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlxmlns:wshttps://github.com/WPFDevelopersOrg.WPFDevelopers.Minimalxmlns:dhttp://schemas.microsoft.com/expression/blend/2008xmlns:mchttp://schemas.openxmlformats.org/markup-compatibility/2006xmlns:localclr-namespace:OpenCVSharpExampleIconOpenCV_Logo.pngmc:Ignorabled WindowStartupLocationCenterScreenTitleOpenCVSharpExample https://github.com/WPFDevelopersOrg Height450 Width800Grid Margin4Grid.ColumnDefinitionsColumnDefinition MinWidth500 Width8*/ColumnDefinition Width2* MinWidth200//Grid.ColumnDefinitionsImage Grid.Row0 NameimgViewport/GridSplitter Grid.Column0 HorizontalAlignmentRight Width2/GroupBox HeaderOperation Grid.Column1 Margin0,0,4,0GridGrid.RowDefinitionsRowDefinition/RowDefinition/RowDefinition HeightAuto//Grid.RowDefinitionsStackPanel Grid.Row0 HorizontalAlignmentLeftCheckBox IsChecked{Binding IsSave,RelativeSource{RelativeSource AncestorTypelocal:MainWindow}}VerticalAlignmentCenter ContentSave Margin0,4/CheckBox IsChecked{Binding IsFace,RelativeSource{RelativeSource AncestorTypelocal:MainWindow}}VerticalAlignmentCenter ContentFace Margin0,4/ComboBox NameComboBoxCamera ItemsSource{Binding CameraArray,RelativeSource{RelativeSource AncestorTypelocal:MainWindow}} SelectedIndex{Binding CameraIndex,RelativeSource{RelativeSource AncestorTypelocal:MainWindow}}SelectionChangedComboBoxCamera_SelectionChanged//StackPanelStackPanel OrientationHorizontal Grid.Row2 HorizontalAlignmentCenterButton NamebtPlay ContentPlay Style{StaticResource PrimaryButton} ClickbtPlay_Click IsEnabledFalse/Button NamebtStop ClickbtStop_Click ContentStop Margin4,0//StackPanel/Grid/GroupBox/Grid /ws:Window二、MainWindow.xaml.cs代码如下。using OpenCvSharp; using OpenCvSharp.Extensions; using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Drawing.Imaging; using System.Globalization; using System.IO; using System.Management; using System.Threading; using System.Windows; using System.Windows.Controls; using System.Windows.Media.Imaging; using System.Windows.Threading;namespace OpenCVSharpExample {/// summary/// MainWindow.xaml 的交互逻辑/// /summarypublic partial class MainWindow{private VideoCapture capCamera;private VideoWriter videoWriter;private Mat matImage  new Mat();private Thread cameraThread;private Thread writerThread;private CascadeClassifier haarCascade;private WriteableBitmap writeableBitmap;private Rectangle rectangle;private Mat gray;private Mat result;private OpenCvSharp.Rect[] faces;public Liststring CameraArray{get { return (Liststring)GetValue(CameraArrayProperty); }set { SetValue(CameraArrayProperty, value); }}public static readonly DependencyProperty CameraArrayProperty DependencyProperty.Register(CameraArray, typeof(Liststring), typeof(MainWindow), new PropertyMetadata(null));public int CameraIndex{get { return (int)GetValue(CameraIndexProperty); }set { SetValue(CameraIndexProperty, value); }}public static readonly DependencyProperty CameraIndexProperty DependencyProperty.Register(CameraIndex, typeof(int), typeof(MainWindow), new PropertyMetadata(0));public bool IsSave{get { return (bool)GetValue(IsSaveProperty); }set { SetValue(IsSaveProperty, value); }}public static readonly DependencyProperty IsSaveProperty DependencyProperty.Register(IsSave, typeof(bool), typeof(MainWindow), new UIPropertyMetadata(IsSaveChanged));private static void IsSaveChanged(DependencyObject d, DependencyPropertyChangedEventArgs e){var mainWindow  d as MainWindow;if (e.NewValue ! null){var save  (bool) e.NewValue;if (save)mainWindow.StartRecording();elsemainWindow.StopRecording();}}public bool IsFace{get { return (bool)GetValue(IsFaceProperty); }set { SetValue(IsFaceProperty, value); }}public static readonly DependencyProperty IsFaceProperty DependencyProperty.Register(IsFace, typeof(bool), typeof(MainWindow), new UIPropertyMetadata(IsFaceChanged));private static void IsFaceChanged(DependencyObject d, DependencyPropertyChangedEventArgs e){var mainWindow  d as MainWindow;if (e.NewValue ! null){var save  (bool)e.NewValue;if (save)mainWindow.CreateFace();elsemainWindow.CloseFace();}}public MainWindow(){InitializeComponent();Width  SystemParameters.WorkArea.Width / 1.5;Height  SystemParameters.WorkArea.Height / 1.5;this.Loaded  MainWindow_Loaded;}private void MainWindow_Loaded(object sender, RoutedEventArgs e){InitializeCamera();}private void ComboBoxCamera_SelectionChanged(object sender, SelectionChangedEventArgs e){if (CameraArray.Count - 1  CameraIndex)return;if (capCamera ! null  cameraThread ! null){cameraThread.Abort();StopDispose();}CreateCamera();writeableBitmap  new WriteableBitmap(capCamera.FrameWidth, capCamera.FrameHeight, 0, 0, System.Windows.Media.PixelFormats.Bgra32, null);imgViewport.Source  writeableBitmap;}private void btStop_Click(object sender, RoutedEventArgs e){StopDispose();btStop.IsEnabled  false;}protected override void OnClosing(CancelEventArgs e){if(WPFDevelopers.Minimal.Controls.MessageBox.Show(是否关闭系统?, 询问, MessageBoxButton.OKCancel, MessageBoxImage.Question) ! MessageBoxResult.OK) {e.Cancel  true;return;}}protected override void OnClosed(EventArgs e){StopDispose();}private void btPlay_Click(object sender, RoutedEventArgs e){btPlay.IsEnabled  false;btStop.IsEnabled  true;CreateCamera();}#region 方法void CloseFace(){if (haarCascade ! null){haarCascade.Dispose();haarCascade  null;gray.Dispose();gray  null;result.Dispose();result  null;faces  null;}}void CreateFace(){var facePath  System.IO.Path.Combine(System.Environment.CurrentDirectory, Data/haarcascade_frontalface_default.xml);if (!System.IO.File.Exists(facePath)){WPFDevelopers.Minimal.Controls.MessageBox.Show(缺少人脸检测文件。, 错误, MessageBoxButton.OK, MessageBoxImage.Error);return;}haarCascade  new CascadeClassifier(facePath);}private void InitializeCamera(){CameraArray  GetAllConnectedCameras();}Liststring GetAllConnectedCameras(){var cameraNames  new Liststring();using (var searcher  new ManagementObjectSearcher(SELECT * FROM Win32_PnPEntity WHERE (PNPClass  Image OR PNPClass  Camera))){foreach (var device in searcher.Get()){cameraNames.Add(device[Caption].ToString());}}return cameraNames;}void CreateCamera(){capCamera  new VideoCapture(CameraIndex);capCamera.Fps  30;cameraThread  new Thread(PlayCamera);cameraThread.Start();}private void PlayCamera(){while (capCamera ! null  !capCamera.IsDisposed){capCamera.Read(matImage);if (matImage.Empty()) break;Dispatcher.Invoke(new Action(() {if (IsFace){result  matImage.Clone();gray  new Mat();Cv2.CvtColor(result, gray, ColorConversionCodes.BGR2GRAY);faces  haarCascade.DetectMultiScale(gray, 1.3);if (faces.Length  0){Cv2.Rectangle(matImage, faces[0], Scalar.Green, 2);}result.Dispose();}}));using (var img  BitmapConverter.ToBitmap(matImage)){var now  DateTime.Now;var g  Graphics.FromImage(img);var brush  new SolidBrush(System.Drawing.Color.Red);System.Globalization.CultureInfo cultureInfo  new CultureInfo(zh-CN);var week  cultureInfo.DateTimeFormat.GetAbbreviatedDayName(now.DayOfWeek);g.DrawString(${week} { now.ToString(yyyy年MM月dd日 HH:mm:ss )} , new System.Drawing.Font(System.Drawing.SystemFonts.DefaultFont.Name, System.Drawing.SystemFonts.DefaultFont.Size), brush, new PointF(0, matImage.Rows - 20));brush.Dispose();g.Dispose();rectangle  new Rectangle(0, 0, img.Width, img.Height);Dispatcher.Invoke(new Action(() {WriteableBitmapHelper.BitmapCopyToWriteableBitmap(img, writeableBitmap, rectangle, 0, 0, System.Drawing.Imaging.PixelFormat.Format32bppArgb);}));img.Dispose();};Thread.Sleep(100);}}private void StartRecording(){if (capCamera  null){WPFDevelopers.Minimal.Controls.MessageBox.Show(未开启摄像机, 提示, MessageBoxButton.OKCancel, MessageBoxImage.Error);return;}var videoFile  System.IO.Path.Combine(System.Environment.CurrentDirectory, Video);if (!System.IO.Directory.Exists(videoFile))System.IO.Directory.CreateDirectory(videoFile);var currentTime  System.IO.Path.Combine(videoFile, ${DateTime.Now.ToString(yyyyMMddHHmmsshh)}.avi);videoWriter  new VideoWriter(currentTime, FourCCValues.XVID, capCamera.Fps, new OpenCvSharp.Size(capCamera.FrameWidth, capCamera.FrameHeight));writerThread  new Thread(AddCameraFrameToRecording);writerThread.Start();}private void StopRecording(){if (videoWriter ! null  !videoWriter.IsDisposed){videoWriter.Release();videoWriter.Dispose();videoWriter  null;}}private void AddCameraFrameToRecording(){var waitTimeBetweenFrames  1_000 / capCamera.Fps;var lastWrite  DateTime.Now;while (!videoWriter.IsDisposed){if (DateTime.Now.Subtract(lastWrite).TotalMilliseconds  waitTimeBetweenFrames)continue;lastWrite  DateTime.Now;videoWriter.Write(matImage);}}void StopDispose(){if (capCamera ! null  capCamera.IsOpened()){capCamera.Dispose();capCamera  null;}if (videoWriter ! null  !videoWriter.IsDisposed){videoWriter.Release();videoWriter.Dispose();videoWriter  null;}CloseFace();btPlay.IsEnabled  true;GC.Collect();}void CreateRecord(){cameraThread  new Thread(PlayCamera);cameraThread.Start();}#endregion} }02—效果预览鸣谢素材提供者 - OpenCVSharp源码地址如下Githubhttps://github.com/WPFDevelopersOrghttps://github.com/WPFDevelopersOrg/OpenCVSharpExampleGiteehttps://gitee.com/WPFDevelopersOrgWPF开发者QQ群 340500857 Githubhttps://github.com/WPFDevelopersOrg出处https://www.cnblogs.com/yanjinhua版权本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。转载请著名作者 出处 https://github.com/WPFDevelopersOrg扫一扫关注我们更多知识早知道点击阅读原文可跳转至源代码
http://www.yutouwan.com/news/463672/

相关文章:

  • 营销网站制作都选ls15227网站作品欣赏
  • 正规的网站制作联系方式先备案还是先做网站
  • 金诚财富网站是谁做的用python做网站后端最快多久
  • 做初中物理题目的网站国外优秀vi设计网站
  • 网站名称怎么填写wordpress图片缩略图不显示
  • 2013年建设工程发布网站潍坊住房公积金官网登录
  • 网站建设培训ppt杭州网站建设优化推广
  • 汶上1500元网站建设下载百度网盘app最新版
  • 短网址生成站长工具网站空间容量
  • 举报企业网站用个人信息备案品牌网站建设只詢大蝌蚪
  • 怎么做淘宝客的跳转网站东莞最新招聘
  • 微信商城软件开发宁波优化网站排名价格表
  • 构建一个商务网站的步骤有哪些医疗网站如何做优化
  • wordpress首页静态网站优化做网站优化
  • 做网站写需求怎么促成客户做网站
  • 建设一个手机网站首页广告东莞网站建设技术支持
  • 什么是网站主题优化建设网站的工作职责
  • 大同市网站建设网站首页制作模板
  • 织梦更新网站地图怎么样才能开网店
  • 佛山网站优化如何做网站的合同
  • 简洁个人博客网站模板淘宝运营学习
  • 网站域名是指什么意思微信网站建设报价单
  • 网上购物哪个平台质量好又便宜沈阳seo推广公司
  • 制作做网站的基本流程广州的网站建设公司哪家好
  • 枣阳网站建设等服务闵行网页设计培训学校
  • 江苏建设厅施工员证报名网站湖北建站公司
  • 建立网站的方法扁平式网站模板
  • 淘客网站开发公司淘宝网页设计模板素材
  • php网站开发案例网站内容管理平台
  • 安陆市城乡建设局网站aws的efs可以做网站的什么