自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 资源 (1)
  • 收藏
  • 关注

原创 VS下运行QT,更改ui界面后,VS实时更新更改信息操作

问题:在代码编辑过程中,通过ui设计师在界面上添加或者更改某些控件的属性,例如添加某个控件,然后再代码区无法通过ui访问该按钮,这是因为虽然界面添加并保存了更改信息,但是并没有更新到代码区。解决:再更改或者添加了控件以后,右击ui文件进行编译项目处理,然后点击“重新扫描解决方案”即可。...

2022-06-21 10:52:12 1794 1

原创 vs2015 +qt basler相机添加pylon配置

事前准备:安装到指定位置,一般默认安装到默认C盘 ,后期操作能找到相关配置文件就行。操作:安装好之后,然后打开VS新建Qt项目,然后在解决方案下,选中项目名称然后右击选择属性,注意自己选择的配置属性,笔者这边选择的是release版本和x64平台。然后在“配置属性”->"VC++目录"->添加"包含目录"和"库目录" 然后在“链接器”->"输入"添加然后点击应用就将相关配置添加完毕。 balser相机相关文件sdk安装目录下。然后添加API头文件可以看到系统能找到头文件。...

2022-06-17 14:31:42 732

原创 硬件PCB开槽操作

硬件PCB制作细节操作

2022-06-13 08:09:57 1356

原创 Vs下运行QT配置opencv

好记性不如烂笔头,记录配置方便以后查看。在VS下配置三方库,基本上都是三板斧式的死板操作,照着做就行,主要包括以下三类:1、包含头文件2、库文件3、动态库文件下载版本opencv4.5.3解压到指定文件目录:如下所示,include头文件所在位置;如下所示,lib库文件和生成的dll动态库文件所在位置,注意vs版本对应,笔者使用的VS2015版本;然后打开VS,创建一个QT工程项目,qt版本使用的64位,目前大多数都是64位,如果使用的是32位,那必须使用对应的.

2022-05-31 15:45:38 1419

原创 “vs+qt“点击项目目录下ui界面文件,停留短暂时间后闪退,显示xxx.ui文件无法打开。

解决方法: 右击xxx.ui文件选择“打开方式”选择“添加”在添加“程序”中选择designer.exe重新添加可对友好名称重新命名,点击确定然后将打开方式选中刚新添加的Qt设计师设为默认值即可r...

2022-05-14 10:35:36 218

原创 Thread.sleep(0)作用

Thread.Sleep(0)的作用是“触发操作系统立刻重新进行一次CPU竞争”,竞争的结果可能是当前线程仍然获得CPU控制权,也可能是别的线程获得CPU控制权。

2022-04-27 10:30:48 2361

原创 Haclon +c# 实时图像显示

首先第一步用Haclon软件写好实时采集代码:* Image Acquisition 01: Code generated by Image Acquisition 01open_framegrabber ('GigEVision2', 0, 0, 0, 0, 0, 0, 'progressive', -1, 'default', -1, 'false', 'default', '000f314ccf51_AlliedVisionTechnologies_Manta_G125BE0020002',

2022-04-12 17:01:53 1366

原创 C#关闭窗口时,退出方法汇总

this.Close(); 只关闭当前窗口,无法退出程序,如果有托管线程(非主线程),也无法完全地退出; Application.Exit(); 强制所有消息中止,退出所有的窗体,如果有有托管线程(非主线程),也无法扯淡退出; Application.ExitThread(); 强制中止调用线程上的所有消息,同样面临其它线程无法正确退出的问题; System.Environment.Exit(0); 最彻底的退出方法。...

2022-01-13 13:23:59 5057 1

原创 c# 数据byte转换int

今天在做上位机与PLC通信时,对方是协议将按照int16发数据给上位机,但是上位机接收到的是数据是高8位在前,低八位在后。而Csharp 中BitConverter.toUint16默认转换时,数据是低八位在前的,于是需要将这边的数据转换下。C# 自带的方法对此是有处理的。对于整型、长整型等数据类型,BitConverter.Bigendian 认为第一个字节是最高位字节,BitConverter.IsLittleEndian认为第一个字节是最低位字节。/// <summary> //.

2021-10-11 18:05:33 5557

原创 C# 子线程如何更新UI界面数据

一般在上位机界面的开发中,通常都需要在后台线程计算处理数据。然后在上位机显示,对于多任务处理,通常都是采用多线程的方法,这就要求必须采用线程间的通信。最简单的就是全局变量,等同是在共享数据,但这并不是最安全可靠的,同时对系统的开销大,还存在资源争夺的问题。无论采用何种框架,都无法直接在子工作线程中,直接对主线程(UI)进行数据更新。常用分几种C#UI开发下的使用方法:通过UI线程的SynchronizationContext的Post/Send方法更新 通过UI控件的Invoke/BeginInv

2021-09-03 17:09:38 6418 1

原创 C# 向已建立EXCEL图表中追加新数据

public void AppendExcelData(string excelPath) { FileStream fs = new FileStream(excelPath, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite);//读取流 POIFSFileSystem ps = new POIFSF...

2021-08-31 14:17:37 2359

原创 QT在VS下配置

如果从国外网址打开会非常的慢,在这里提供网址为:安装:下载好对应的版本之后,关闭vs 然后双击文件等待安装插件。笔者是本来安装了这个工具,一不小心手抖卸载掉了。可以在扩展和更新对话框中选中联机,在最右方的搜索框中,输入关键词QT就可以得到相应的QT vs tools,点击下载安装就好了。配置QT插件open已安装好的VS,在VS菜单栏出现“QT VS Tools”时,表示工具安装成功。点击获取下拉菜单中选择“Qt Options”添加QT中关于VS2015对应的QT库

2021-01-18 20:38:42 854

原创 链表(一)

链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。单向链表(增、删、改、示) #include <stdio.h>#include <stdlib.h>struct Node *CreateNewNode(struct Node *next);void DisplyNode(str...

2020-12-31 20:29:28 152

原创 LRC校验

void DataToSingle(u32 input_data,u8* Out_DataBit) //ÊäÈëÊý¾ÝÉϵÄλÊý{ u8 temp_dataBit[20]; u8 i,j,n; while(input_data!=0) { temp_dataBit[i++]=0x80+(input_data%10)&0xff; input_data=input_data/10; } n=i; BitCount=i; for(j=0;j<i;.

2020-11-07 15:45:15 1226

原创 stm32f407之Modbus开发(1)

在之前的项目中,基本上都是用F1系列开发就足够,本次项目数据吞吐量稍微大了些,并对实时性提出了更高的要求,因此终于对f407下手了。第一次使用这款芯片,说实话该芯片确实很贵,好在不差钱。笔者对整个系统开发中的modbus通信模块进行记录。在这之前还是要对单片机的USART通信有一个较为深刻的认识,之前对于modbus开发要么是用现成开发的库,笔者在这里通过USART+DMA实现MODBUS通信。USART...

2020-11-04 13:56:30 991

原创 RNN例程

import osimport numpy as npimport tensorflow as tffrom tensorflow import kerasfrom tensorflow.keras import modelsfrom tensorflow.keras import datasets,Sequential,layers,optimizers,metricsfrom tensorflow.keras.layers import Conv2D,MaxPooling2D,Flatte.

2020-09-30 14:49:38 172

原创 Tensorflow 2.1.0 深度小白之第一个入门程序-非线性模型

神经网络的组成单元——神经元(感知器)感知机模型是最早的人工神经元数学模型,感知器不仅仅能实现简单的布尔运算。它可以拟合任何的线性函数,任何线性分类或线性回归问题都可以用感知器来解决。还可以完成一些简单的视觉分类任务,比如区分三角形、圆形和矩形等。感知机模型的结构如图: MNIST数据集通常对于一个小白来说,使用MNIST数据集进行入门学习是最合适的,MNIST数据集不大 ...

2020-09-29 09:46:24 284

原创 关于tensorflow2.x与1.x版本不兼容问题处理

(一)输入:x = tf.placeholder("float",shape = [None,784])y = tf.placeholder("float",shape = [None,10])结果报错:AttributeError: module 'tensorflow' has no attribute 'placeholder'原因分析:Tensorflow 1.x 版本提供placeholder,2.0版本的代码就不能执行。这个代码的意义也就在2.x版本的tensorf.

2020-09-23 15:02:19 1163

原创 Win10下安装Matplotlib

1.打开“Anaconda Prompt”命令操作界面,在安装好的tensorflow环境下找python安装目录。2.首先键入“conda info --envs”,“activate tensorflow”切换到tensorflow环境下的python目录,如图所示。3.接着键入python -m pip install matplotlib进行自动的安装,系统会自动下载安装包,下载速度比较慢,可以多次执行下安装命令,完成安装。4.安装完成后,可以用python -m pip..

2020-09-21 15:58:17 371

原创 tensorflow包最全版本下载

gpu版本:https://pypi.org/project/tensorflow-gpu/#historyCPU版本:https://pypi.org/project/tensorflow/#history

2020-09-18 15:37:28 3777

原创 AttributeError: module ‘tensorflow‘ has no attribute ‘Session‘

最近在安装anoaconda之后,准备安装tensorflow 框架,也是一直没有成功,毕竟是新生,注定是前路漫漫,磕磕绊绊。都是一个过程,终将是要成功,但是这个经历是少不了的,慢慢磨啊。由于之前2.0版本的使用比较繁琐,2.0以后对其做了较大的改动,所以使用的时候容易出现兼容性问题。笔者也是遇到了诸多的问题,和大多数菜鸟一样,配置好环境之后,就是来一段测试代码,这让笔者想起了多年的hello C!。具体测试代码如下:import tensorflow as tfhello = tf....

2020-08-19 19:07:53 411

原创 Anaconda安装

百度搜索Anaconda到官网下载安装包。这些都是开源免费的,所以请大家放心下载。进入官网,点击Get Started,选择"Install Anaconda Individual Edition"进入下载选择。如下图所示,根据自己的机型选择合适的版本,笔者选择的版本是win10 x64。这是下载好的Anaconda软件安装包,然后点击安装。点击安装然后等待安装完成。于是在桌面上生成快捷方式,如下图所示。点击打开软件进一步安装相关开发...

2020-08-13 10:26:33 397

原创 Python2.7安装教程

百度搜索Python进入官网,二、配置环境变量

2020-08-04 09:02:31 3862

原创 深度学习之损失函数、成本函数、目标函数的基本概念

损失函数(Loss function)是定义在单个训练样本上的,是真实值和预测值的非负值函数。也就是就算一个样本的误差。比如我们想要分类,就是预测的类别和实际类别的区别,是一个样本的,用L表示 代价函数(Cost function)是定义在整个训练集上面的,也就是所有样本的误差的总和的平均,也就是损失函数的总和的平均,有没有这个平均其实不会影响最后的参数的求解结果。1、“损失函数”一般是指对单个样本的做的损失|yi−f(xi)||yi−f(xi)|2、“成本函...

2020-08-03 14:31:07 2315

原创 常见的激活函数

f(x) = max(0, x)ReLu函数如上所示。当x是正值时,它输出x,否则输出0。

2020-08-03 14:28:02 404

原创 C++设计模式之模板模式

在GOF的《设计模式:可复用面向对象软件的基础》一书中对模板方法模式是这样说的:定义一个操作中的算法骨架,而将一些步骤延迟到子类中。TemplateMethod使得子类可以不改变一个算法的接口即可重定义改算法的某些特定步骤。UML类图#ifndef MYBASICCLASS_H#define MYBASICCLASS_H#include <iostream>using namespace std;//抽象基类 实现一个模板的方法class mybas...

2020-08-01 10:38:46 121

原创 Qt chart动态数据显示关键

void MainWidget::updateData(){ int i; QVector<QPointF> oldData = series->pointsVector(); QVector<QPointF> data; if (oldData.size() < 97) { data = series->pointsVector(); } else { /* 添加之前老的数据到新的...

2020-07-31 09:51:45 1046

原创 Qt之modbus tcp 客户端主机读写保持寄存器程序

#include "modbusmaster.h"#include "widget.h"#include <QStatusBar>#include"QDebug"#include<QTextEdit>ModbusMaster::ModbusMaster(QObject *parent) : QObject(parent){}bool ModbusMaster::initModbusNetworkMaster(QString address, int port).

2020-07-30 10:57:27 4887 4

原创 Qt之数据库查找setfilter函数运行总结

最近在项目中接入一个简单的数据库功能,关于QT版本的数据库操作网上资料也是铺天盖地,涉及到数据库的基本操作也就是让人朗朗上口的增、删、改、查。但是具体怎么改怎么查,这在实际运用过程中,仅仅掌握基本的是远远不够的,还必须要扩展知识储备,还要做到融会贯通。笔者就在实际运用过程中的一些关键做个简要的记录,给大家一个参考。 在使用查找这个功能时,普遍讲述的是对单一变量的查询,笔者认为数据库上面的内容皆可任意查询。笔者也是在接到项目边学边上,所以很多东西也是刚接触,难免走了弯路,而且还没走...

2020-07-29 11:07:16 4706 1

原创 Qt之QSignalMapper类的使用解决大批量操作问题

最近在用QT在做一个系统管理平台。因为要涉及点击事件,笔者在管理界面上采用了大批量的按钮控件,为什么要用大量的按钮,这个是客户提出的需求所致,但是从技术层面考虑,总是感觉怪怪的。接下来只能从技术的层面一个一个攻破,对于Qt的应用开发,笔者也是一边学一边用,也是艰难前行。小青蛙在慢慢爬出井底。在使用大量按钮控件的同时,就遇到一个严重的问题,大量按钮事件,所对应的槽函数也是大量的。每一个按钮写一个槽函数这种傻大粗的操作是绝对不可取的。当时就早考虑,Qt有没有大批量操作按钮的情况,在网上搜索一番也是...

2020-07-25 11:03:39 477

原创 Qt配置QtXlsx输出Excel文件方法2

新建qt工程,在.pro文件中添加QT += xlsx ,否则会不识别此模块。添加相关头文件#include<QtXlsx/QtXlsx>,注意笔者是用C++开发的,因此要加上命名空间QXlsx。先qmake下,然后在编译代码,这样就可以在生成的debug文件夹下生成名为Test的Excel的文件。至此通过QT使用QtXlsx输出Excel文件完成。当然还有其他方法实现,这个就看大家的选择。...

2020-07-21 10:38:27 424

原创 Qt配置QtXlsx输出Excel文件方法1

最近做了一个简单的管理系统,实现从下位机到上位机的数据连接链接,通过建立数据库实现对下位机数据的记录统计,为了增强下本系统的功能 性,准备将得到的的数据以Excel表格的文件输出。在网上找了些资料,基本上都是采用开源的QtXlsx...

2020-07-21 08:37:53 1135 1

原创 C/C++ const 修饰符的作用

const 变量必须被初始化,未初始化的const变量,编译器会报错,同时在编译的过程中,将其放在内存中的只读区域中,也可别称作“只读变量”,不允许被修改。增加程序的健壮性。在C语言中,enum类型和#define宏定义都可以用来定义常量。 const int a; 表示a是个整型常量 const char *a; //*a是const, a可变    const (char *) pContent;//pContent是const,*pContent可变   

2020-07-17 19:05:06 241

原创 PID算法的实现

好久没做电机控制了。以前做了许多PID控制项目,但是都没有正儿八经的记录下来。最近公司接到一个小项目,算是有机会重拾PID算法,还是有点小兴奋。早些年参加很多小车竞赛,多用PID对电机的调速,也算是对PID算法有较多的感触。对于常规使用场合,PID算法是最使用的控制算法。结构简单、易于操作实现。具体算法原理不做赘述,就基于STM32的具体算法实现,笔者在此做一个稍做总结。PID控制系统原理框图如下: 基本控制器PID算法公式为:式中:u(t)-控制器输出控制...

2020-05-26 19:28:24 2692

原创 opencv学习第二天(CV_未定义标识符)

最近在opencv学习的时候,老是遇到关于CV_定义符出现未定义标识符的情况,一方面是从网上找的opencv程序版本不一致,高版本对程序中一些定义做了简化和重新修改,导致不匹配情况。后来在网上搜索相关的问题,找到解决问题的办法。笔者遇到的:CV_RGB2GRAY 、CV_MINMAX、CV_WINDOW_AUTOSIZE等。解决办法是:添加头文件:#include<...

2020-04-24 09:53:10 8861

原创 opencv学习第一天(错误:未定义标识符 "CV_CAP_PROP_FRAME_WIDTH")

最近由于重装系统的缘故,之前配置好的opencv环境坏了。重新添加之后,之前的程序工程都得在设置一遍。在编译的过程中,出现了一些莫名的错误。 具体的错误如下: 第一个问题是原本是因为缺少dll文件,但是在指定目录已经有了此类文件,这个问题应该是编译的问题。第二个问题才是重点,之前这种写法是完全没有问题的,同样的工程出现这样的问题了。在网上查了查原因,认为是op...

2020-04-13 10:04:14 10538 3

原创 MFC学习第三天(VS2015出现: C4996 'MBCS_Support_Deprecated_In_MFC)

警告 : C4996 'MBCS_Support_Deprecated_In_MFC': MBCS support in MFC is deprecated and may be removed in a future version of MFC.解决办法:工程->属性->配置属性->C/C++->预处理器->预处理器定义 ...

2020-04-09 10:28:51 599

原创 MFC学习第二天_02(错误:没有参数列表匹配的重载函数)

错误提示:没有与参数列表匹配的 重载函数 "ATL::CStringT<BaseType, StringTraits>::Format [其中 BaseType=wchar_t, StringTraits=StrTraitMFC_DLL<wchar_t, ATL::ChTraitsCRT<wchar_t>>]" 实例 解决办法:Number.Forma...

2020-04-08 20:12:42 2576 2

原创 MFC学习第二天_01(错误:没有与这些操作数匹配的 "+" 运算符 )

最近在编写一个MFC代码,参考网上其他相关代码。直接复制粘贴到工程项目中,编译出现如下错误。错误:没有与这些操作数匹配的 "+" 运算符 解决办法:打开【主菜单】→【项目(Alt+F7)】→【属性】→【常规】→【字符集】→【使用多字节字符集】...

2020-04-08 19:56:06 1035 2

原创 图像处理之相机标定(二)

摄像机的内参:摄像机从三维空间到二维图像的投影关系。针孔摄像机模型为6个参数(f,κ,Sx,Sy,Cx,Cy);远心摄像机模型为5个参数(f,Sx,Sy,Cx,Cy);线阵摄像机初始摄像参数为8个参数:(f,κ,Sx,Sy,Cx,Cy,NumCol.NumRow)。f:为焦距,fx,fy为焦距,一般情况下,二者相等,;k: 表示径向畸变量级,如果k为负值,畸变为桶型畸变,如...

2020-04-03 17:43:14 1582

OPC动态链接库文件.zip

opccomn_ps.dll OPCDAAuto.dll OpcEnum.exe opchda_ps.dll opcproxy.dll

2020-01-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除