- 博客(24)
- 资源 (1)
- 收藏
- 关注
原创 用C#构建一个几何画板程序
最近给自己的孩子辅导数学作业,感觉数学几何图像画起来真麻烦,如是在网上找几何画板软件,发现大部分都是国外的软件,且基本都是收费的。有些收费软件好像国内过了代理期了,基本无法购买。如是想能能自己开发一个呢!我想c#的GDI+绘图不麻烦吧!如是开始动笔,不过发现细节的技术问题很多的,包括坐标变换、函数解析、图像、元素状态、点的吸附功能(中点吸附)、点的路径锁定、图形放大等一系列的技术问题要处理,历时一个月雏形基本出来了。 但目前软件还不是很完善,还有很多的BUG,等软件OK了...
2021-11-26 18:24:26
1272
4
原创 text-detection-ctpn项目移植到windows的各种问题
此项目用于中文OCR,项目地址https://github.com/eragonruan/text-detection-ctpn。该项目基于linux平台,因此在windows下想要玩转就有无数的坑! 有人写过如何解决,但故弄玄虚,没有真正解决问题,一个文件还需要积分才可以下载,晕倒我!其它问题都不大,主要是要解决下面2个问题。1)bbox.pyx和cython_mms.pyx编译windows下的bbox.pyd和cython_mms.pyd文件。因为作者提供的linux下的setu...
2020-06-05 18:11:02
544
原创 C# Winform实现圆角无锯齿按钮
C# Winform实现圆角无锯齿按钮发现用Winform做一个圆角按钮遇到麻烦,主要是锯齿问题,后面想了想办法解决问题了。主要方法是按钮的区域通过Region指定,但按钮需要自己画,否则怎么搞都出现锯齿,网上有朋友提供一个漂亮的方案,可是代码不完整无法使用,我的解决方案现在分享如下: public enum ControlState { Hover , Normal, Pre...
2019-12-21 22:28:13
9812
1
原创 一个基于蒙特卡洛搜索树的五子棋实现
最近有点烦啊,也有点无聊,去年研究德州扑克失败,后面知道AlphaZero都用了蒙特卡洛搜索树,那估计俺方向错误了?如是准备学习下这个东东,为深度学习攻克德州扑克做技术准备工作。这个东东理论上的介绍网络上实在是太多了,大部分也没有什么问题。但没有代码的实现的东西,感觉不是踏实,不靠谱。我想用什么方法来验证下我是否真正理解了这个东西了,那就做一个地球人都知道的五子棋来验证我的对这...
2019-07-07 22:04:58
7398
5
原创 也谈C++ traits技术
最近学习国外一个开发时间长达10年以上的开源C++代码,发现大量的traits萃取技术。查看网络对这个技术解释得非常难懂,现在用一个通俗易懂的列子来讲解下究竟是什么意思。 我的理解是C++算是底层语言,无法像java和C#一样运行期动态判断对象类型(如 is 等关键字)等信息。通过C++的模板萃取技术可以达到要求,且是通过编译后模板实列化后决定其行为,这样速度效率更高,代码更加简...
2019-05-11 16:25:27
638
原创 Linux 下使用vscode开发配置注意问题(vscode无法启动调试程序)
我们老大是Intel回来的高级大神,从来不用IDE,我们还是喜欢IDE。Linux下用什么IDE为好呢?我接触的IDE,最喜欢的还是微软的vs了。但Linux下无法用,我们就选择VSCode吧!开源免费,各种插件都支持。 linux c++开发离不开makefile,vscode可以方便挂接makefile,下面是我配置过程的总结,希望对大家有参考!1)liunx下配置启动...
2019-03-09 18:28:47
4340
1
原创 QT绘图中屏幕坐标转换为数学笛卡尔坐标
计算机屏幕坐标是左上角为(0,0),X轴向右,Y轴向下。在绘制图形的时候,很多图形对象存储的坐标是数学上笛卡尔坐标,这个时候需要转换,QT做转换我开始迷茫,后面终于明白了,只要一个函数就搞定了。下面函数就是把屏幕坐标做下角定为(0,0),X轴向右,Y轴向上。此函数后面绘制坐标,就按这个坐标系统来绘制就没有问题了。void Widget::paintEvent(QPaintEvent *even...
2019-02-15 10:40:53
2377
1
原创 QT 中调用FFMpeg实现视频播放功能
QT用来播放显示,FFMPeg循环从H264、H265缓存队列中取数据,解码成图片后通过信号曹函数发给QT界面去显示,这样就实现了视频播放功能。解码方法:videoplayer.cpp #include "videoplayer.h"#include <stdio.h>extern "C"{#include "libavcodec/avcodec.h"#i...
2018-09-23 16:59:39
6153
原创 C++实现GB28181视频协议
从事一年的视频开发工作和架构设计,现在想写点东西给大家分享下。 远程访问控制视频设备有很多协议如RTSP等,但这些协议是要求设备是有明确IP的,因为它们只能完全被动接受请求。但GB28181协议就不是,它使设备主动链接平台 ,主动上线,上线后,平台可以给设备发视频请求等,实现视频的直播、回播等。这样的优势是只要平台在外网的IP段,设备找到平台后,所有设备就可以随意控制了...
2018-09-23 14:23:49
11700
7
原创 一个简单实用的C++日志类
最近做c++开发,需要对软件状态做一个日志记录,发现开源的实现很多,但感觉太大了,动不动就几十个Cpp文件。我的东西还要跑在嵌入式设备上呢?不就写个日志吗,“”噼噼啪啪“”,一个下午就搞定! 在此做一个简单记录吧,供自己日后参考! Log.H头文件#pragma once#include <fstream>#include <iostream&g...
2018-09-14 23:32:46
601
原创 TensorFlow保存训练模式
TensorFlow训练模式如何保存,网上很多列子,拿来一试竟然没有作用! 后面自己摸索了下,搞定了,下面列子每次启动训练都会读取上次训练结果,每次训练也会自动存储。做一个记录吧,方便日后查询:W_fc2 = weight_variable('W_fc2',[1024,64]) b_fc2 = bias_variable([64]) W_fc3 = weight_variable('...
2018-09-14 23:21:25
419
原创 c++实现简单的Http客户端协议,WebRequest
最近要写一个代理程序,软件最终要跑在嵌入式设备上,其中一部分是需要做一个简单爬虫程序,用来和嵌入式设备上的Web做信息交互。我不想用第三方的任何库,如是简单看了下http协议,用一天时间实现了http协议的客户端,实现Get、Post、UpFile(文件上传)等常用操作,需要完善的部分是Cookie没有自动提取和传输,需要自己手动处理,朋友们可以完善吧!写个日志,便于日后参考!希望对朋...
2018-09-11 18:11:22
3547
原创 让AI网络自己学会下五子棋
最近学AI,想做点什么,后面想想能不能做一个相对简单的AI,让AI自己学会下五子棋呢!我不想写任何逻辑,我只告诉AI,你这样输了哦。也就是反馈,奖惩的方式,也叫深度强化学习吧(DQN)。我做得很简单,2个一样的网络,一个判断结果,让2个网络自己对抗,策略是部分按训练结果来下,部分按随机概率来下(用来探索最佳答案)。训练过程发现损失越来越少,下棋周期越来越长,棋子会相对离散。这里输出“0”表示先手,...
2018-09-11 17:31:16
990
原创 TensorFlow神经网络拟合抛物线
最近学习Python和TensorFlow,闲来无聊,自己写一个小程序玩玩吧!做什么呢?本人想了想,那就做一个深度学习拟合抛物线的列子吧! 抛物线的数学表达式是y=ax^2+bx+c,我们就来模拟:y=0.3x^2-0.2X+0.51)我们需要构造样本,样本就从上面表达式来,加入一些噪音。x样本的分布通过Numpy库来生成。y的噪音也通过Numpy.random.normal来生成。2)输入...
2018-07-12 17:44:06
1471
原创 从零开始,自己写神经网络识别手写库Mnist
MNIST 数据集来自美国国家标准与技术研究所, National Institute of Standards and Technology (NIST). 训练集 (training set) 由来自 250 个不同人手写的数字构成, 其中 50% 是高中学生, 50% 来自人口普查局 (the Census Bureau) 的工作人员. 测试集(test set) 也是同样比例的手写数字数据
2018-01-30 11:41:33
1135
3
原创 c#神经网络,实现对Iris数据集进行分类
本文以Fisher的Iris数据集作为神经网络程序的测试数据集。Iris数据集可以在http://en.wikipedia.org/wiki/Iris_flower_data_set 找到。先介简单绍下介绍一下Iris数据集:有一批Iris花,已知这批Iris花可分为3个品种,现需要对其进行分类。不同品种的Iris花的花萼长度、花萼宽度、花瓣长度、花瓣宽度会有差异。我们现有一批已知
2017-12-23 12:11:32
2705
原创 一个21行C#代码实现的神经网络
网上有个经典教程:叫【一个 11行 Python 代码实现的神经网络】,闲来无聊, 我们不用任何第三方的库,全部用C#实现它,我花1天时间写的,主代码也不超过20行(自己写的矩阵类肯定不算再内啦)收敛效果是非常好!希望和大家一起研究学习。 原文链接:http://python.jobbole.com/82758主代码如下: double[,] X = new double[4, 3] { {
2017-12-16 22:09:01
10219
3
原创 C#内存泄漏实战
本人发现我们3S-ERP出现内存越来越高的情况,通过国外的一些内存泄漏分析软件,找出了原因,总结如下:容易出问题的地方¤事件引用导致无法及时释。¤没有父类容器UI控件容易导致不释放。¤没有适当定时调用GC回收垃圾! 典型列子AppMain中的静态方法事件Form不关闭,反复
2017-07-27 11:18:31
1449
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人