- 博客(95)
- 资源 (13)
- 收藏
- 关注
原创 (诛仙剑C-SKY)8-小结1
作者:cp时间:2019-05-20申明:本文一些素材取自网络,归原作者所有写在前面前面主要是做一些工具的移植,属于应用层,先大概写到这里,后面主要想往内核和驱动方面学习一下,啃啃硬骨头,有机会再分享关于工具移植的一点心得:由于risc架构玩的人不多,中间可能遇到不少问题,相反地,arm架构有许多东西可以参考,但是不能照搬,可以再结合mips架构,移植时查找与arm架构的异同,进而推敲r...
2019-05-17 16:44:18
521
原创 (诛仙剑C-SKY)7-curl
作者:cp时间:2019-05-18申明:本文一些素材取自网络,归原作者所有写在前面网络与利器curl1.源码1.1下载https://curl.haxx.se/download.html我下载的curl-7.64.1.zip放在C-SKY下新建的文件夹curl1.2解压unzip curl-7.64.1.zip2.配置configure新建curl_i...
2019-05-17 16:41:39
490
原创 (诛仙剑C-SKY)6-QT
作者:cp时间:2019-05-16申明:本文一些素材取自网络,归原作者所有写在前面移植基于linuxfb的QT,不建议使用,卡,这里只作C-SKY也可以使用QT的证明1.源码1.1下载http://download.qt.io/archive/qt/我下载的qt-everywhere-src-5.12.3.tar.xz放在C-SKY下新建的文件夹QT1.2解压x...
2019-05-17 11:49:21
1157
原创 (诛仙剑C-SKY)5-LittlevGL
作者:cp时间:2019-05-14申明:本文一些素材取自网络,归原作者所有写在前面LittlevGL是一个开源免费的GUI,支持触摸屏操作,移植简单方便,开发者一直在不断完善更新。目前AliOS Things已集成开源图形库littlevGL,可以在Linux上进行图形界面开发。有了前面FB操作经验,移植基于Framebuffer的LittlevGL应该比较容易了。1.eclips...
2019-05-14 20:49:03
1217
原创 (赤焰剑C-SKY)2-HelloWorld
作者:cp时间:2019-05-13申明:本文一些素材取自网络,归原作者所有写在前面开发环境配置完成后进入开发步骤,以经典HelloWorld入门,学习包含OS和无OS的工程应用1.新建工作空间打开CDK,点击New Multi-Project Workspace填写工作空间名称及路径完成后可得:2.工程应用12.1 新建IOT工程(with AliOS)工作空间...
2019-05-13 10:07:21
1336
原创 (赤焰剑C-SKY)1-初识
作者:cp时间:2019-05-11申明:本文一些素材取自网络,归原作者所有写在前面“中华芯,天下行”,自主知识产权的32位C-SKY系列嵌入式CPU核,值得学习1.开发板介绍中天微IoT开发板,集成AliOS-Things安全互联网MCU点击购买2.资源特性集成C-SKY安全物联网MCU:CH2201,内置TEE安全运行环境集成JTAG调试电路,USB接口兼容调试和供...
2019-05-12 19:57:12
2894
原创 (诛仙剑C-SKY)4-FrameBuffer
作者:cp时间:2019-05-12申明:本文一些素材取自网络,归原作者所有写在前面开发板提供了HDMI接口,一定要试试FB1.环境参见第一节“4.串口+HDMI”,使用csky_610_gx6605sfb_4.9_uclibc_br_defconfig进入根文件系统后修改/etc/inittab# Put a getty on the serial port- tty0:...
2019-05-12 19:41:45
601
原创 (诛仙剑C-SKY)3-NFS
作者:cp时间:2019-05-10申明:本文一些素材取自网络,归原作者所有写在前面为便于开发实际中经常使用NFS服务,这里分享一下在我的环境中配置NFS的方法,仅供参考1.背景校园网开发板使用无线USB网卡MT7601u,连接校园网WIFI宿主机VMware+Ubuntu18.04(NAT),主机有线连接校园网所以开发板和Ubuntu18.04直接ping不通,但是主机(W...
2019-05-10 15:44:21
424
原创 (诛仙剑C-SKY)2-开发
作者:cp时间:2019-05-08申明:本文一些素材取自网络,归原作者所有##写在前面进入系统后,如何开发应用程序,下面开始介绍1.交叉编译工具链buildroot编译后会在buildroot/output/images目录下生成交叉编译工具链csky_toolchain_xxx.tar.xz,将其安装在/opt/csky_toolchain/下:安装cp output/im...
2019-05-08 10:28:55
1728
原创 (诛仙剑C-SKY)1-初识
作者:cp时间:2019-05-06申明:本文一些素材取自网络,归原作者所有写在前面“中华芯,天下行”,自主知识产权的32位C-SKY系列嵌入式CPU核,值得学习1.开发板介绍基于杭州国芯 GX6605S 芯片,专为学习Linux,可通过buildroot编译gcc glibc uclibc-ng gdb linux-kernel价格: 39RMB / 5EUR / 6USD点...
2019-05-08 10:23:49
3528
原创 编程实现不重启Windows系统直接更改IP配置
设置IP地址只需要更改注册表中关于适配器的相应设置,但更改后需要重新启动系统才能生效,而AddIPAddress函数只能添加IP而不是更改当前的IP,因此有很多朋友都遇到过更改IP配置但是要重启机器的问题,在这里,为大家介绍一种不重启Windows直接更改IP配置的方法----调用API:DhcpNotifyConfigChange。 上次给大家介绍过用批处理的方法:http://b
2015-03-25 17:10:21
777
原创 IAR使用经验
1,可以在程序中间定义变量,应为IAR支持使用c++编译器,这个的确是很方便,有兴趣的同学可以尝试一下。2,如果想定义一个位变量,在keil下是用bit ,在IAR下可以使用bool来定义,但同时要包括stdbool.h的头文件。需要注意的是bool定义的变量和unsigned char定义的变量一样都是占8bits。
2015-03-21 21:51:23
910
原创 C++迭代器 -- iterator使用简介
迭代器(iterator)是一中检查容器内元素并遍历元素的数据类型。(1) 每种容器类型都定义了自己的迭代器类型,如vector: vector::iterator iter;这条语句定义了一个名为iter的变量,它的数据类型是由vector定义的iterator类型。(2) 使用迭代器读取vector中的每一个元素:vector ivec(10,1);for(vector
2015-03-20 14:11:21
527
原创 图像二值化--阈值自动选取
图像分割是图像处理这门学科中的基础难题,基于阈值的分割则又是图像分割的最基本的难题之一,其难点在于阈值的选取。事实证明,阈值的选择的恰当与否对分割的效果起着决定性的作用。由于阈值选取对图像分割的基础性,本文主要在【1】、【2】、【3】、【4】等的基础上,对一些当前流行的阈值选取算法做了探讨、实现和比较。多阈值分割虽然能进一步提高图像分割的质量,但由于它只是分割技巧的处理问题,而与单阈值分割并无本质
2015-03-20 10:23:37
18847
转载 七种常见阈值分割代码(Otsu、最大熵、迭代法、自适应阀值、手动、迭代法、基本全局阈值法)
图像算法:图像阈值分割SkySeraph Dec 21st 2010 HQUEmail:zgzhaobo@gmail.com QQ:452728574Latest Modified Date:Dec.21st 2010 HQU一、工具:VC+OpenCV二、语言:C++三、原理(略)四、程序主程序(核心部分) 代码
2015-03-20 09:48:51
2193
转载 学习C/C++中static关键字
静态变量作用范围在一个文件内,程序开始时分配空间,结束时释放空间,默认初始化为0,使用时可以改变其值。 静态变量或静态函数只有本文件内的代码才能访问它,它的名字在其它文件中不可见。用法1:函数内部声明的static变量,可作为对象间的一种通信机制 如果一局部变量被声明为static,那么将只有唯一的一个静态分配的对象,它被用于在该函数的所有调用中表示这个变量。这
2015-03-15 21:24:30
432
原创 学习C中volatile关键字
在用C进行嵌入式开发时,volatile会影响编译器编译的结果,它告诉编译器volatile 变量是随时可能发生变化的,与volatile变量有关的运算,不要进行编译优化,以免出错。(VC++ 在产生release版可执行码时会进行编译优化,加volatile关键字的变量有关的运算,将不进行编译优化)如果没有volatile关键字,则编译器可能优化读取和存储,可能暂时使用寄存器中的值,如果这个变量
2015-03-15 20:34:48
462
原创 windows批处理自定义IP,子网掩码,网关,DNS
频繁更换工作地点或者重装windows系统后,总是屡次重新配置IP地址等参数,非常麻烦,索性懒得去记本地连接自定义的配置信息。但怎样才能实现懒人的一键配置或还原网络配置呢,下面介绍几种方法:方法一:1. 先备份一下现有的配置信息:"开始" -- "运行" -- 输入"cmd"回车,在命令行下键入以下命令netsh interface ip dump > d:\ip.txt
2015-03-14 18:33:57
2877
原创 dllhost.exe进程消耗内存解决方案
我发现每当我浏览(但并未播放)包含视频的文件夹(主要是MP4格式的视频),电脑的速度就会开始变慢,并且会越来越严重,即便关闭包含视频的文件夹窗口也不能阻止电脑的变慢。通过任务管理器发现每当开启包含视频的文件夹窗口时,总是会有一个dllhost.exe进程出现并不断地消耗内存,直到死机。如果在死机前通过任务管理器强行中止该进程则电脑立刻恢复正常,但是只要浏览包含视频的文件夹,dllhost.exe进
2015-03-14 15:43:53
4457
转载 OpenCV 2.x + SVM文字识别
预备知识下面两个都不是必备知识,但是如果你想了解更多内容,可参考这两篇文章。OpenCV 2.4+ C++ SVM介绍OpenCV 2.4+ C++ SVM线性不可分处理 SVM划分的意义到此,我们已经对SVM有一定的了解了。可是这有什么用呢?回到上一篇文章结果图:这个结果图的意义在于,他成功从二维划分了分类的区域。于是如果以后,有一个新的样本在绿色区域,那么我们就
2015-03-13 19:24:22
959
转载 OpenCV实现二值图像细化的算法
细化算法通常和骨骼化、骨架化算法是相同的意思,也就是thin算法或者skeleton算法。虽然很多图像处理的教材上不是这么写的,具体原因可以看这篇论文,Louisa Lam, Seong-Whan Lee, Ching Y. Suen,“Thinning Methodologies-A Comprehensive Survey ”,IEEE TRANSACTIONS ON PATTERN AN
2015-03-12 21:14:55
2768
转载 OpenCV 2.x + SVM线性不可分处理
目的实际事物模型中,并非所有东西都是线性可分的。需要寻找一种方法对线性不可分数据进行划分。 原理上一篇文章,我们推导出对于线性可分数据,最佳划分超平面应满足: 现在我们想引入一些东西,来表示那些被错分的数据点(比如噪点),对划分的影响。如何来表示这些影响呢?被错分的点,离自己应当存在的区域越远,就代表了,这个点“错”
2015-03-12 11:10:26
490
转载 opencv 2.4.4自带例子总结
parter 1:No1. adaptiveskindetector.cpp利用HSV空间的色调信息的皮肤检测,背景不能有太多与肤色相似的颜色。效果不是特别好。No2. bagofwords_classification.cpp好大一串……目前还看不懂。No3. bgfg_codebook.cpp前后背景分离。开启摄像头或读取视频。No4. bgfg_g
2015-03-12 10:21:21
1387
转载 OpenCV 2.x + SVM介绍
分类器分类器是一种计算机程序。他的设计目标是在通过学习后,可自动将数据分到已知类别。 平面线性分类器一个简单的分类问题,如图有一些圆圈和一些正方形,如何找一条最优的直线将他们分开?我们可以找到很多种方法画出这条直线,但怎样的直线才是最优的呢?距离样本太近的直线不是最优的,因为这样的直线对噪声敏感度高,泛化性较差。 因此我们的目标是找到
2015-03-12 10:18:07
1316
转载 Kalman滤波器从原理到实现
本文转载自:http://xiahouzuoxin.github.io/notes/Kalman滤波器的历史渊源We are like dwarfs on the shoulders of giants, by whose grace we see farther than they. Our study of the works of the ancients enabl
2015-01-24 23:00:54
1158
转载 目标跟踪小结
一、引言:在需要监控的环境里,如何能够判断出进入特定区域的目标,并且能够跟踪目标的轨迹。分为两种情况:一是静态背景下的目标跟踪;二是动态背景下的目标跟踪。二、静态背景下的目标跟踪方法 1、单目标:目标跟踪还可以分为单目标的跟踪和多目标的跟踪。单目标的静态背景下的目标跟踪指的是摄像头是固定在某一方位,其所观察的视野也是静止的。通常采用背景差分法,即先对背景进行建模,然后从视频流中
2015-01-24 22:52:43
1005
转载 四大图像库OpenCV/FreeImage/CImg/CxImage简述
1.对OpenCV 的印象:功能十分的强大,而且支持目前先进的图像处理技术,体系十分完善,操作手册很详细,手册首先给大家补计算机视觉的知识,几乎涵盖了近10年内的主流算法;然后将图像格式和矩阵运算,然后将各个算法的实现函数。我用它来做了一个Harris角点检测器和Canny边缘检测器,总共就花了一个小时(第一次用OpenCV)。而且该库显示图像极其方便,两句话就可以。但该库似乎
2015-01-24 22:48:37
812
原创 Win7登陆管理员账户
有时我们需要管理员权限对系统文件或设置做一些更改,但是当前登陆系统的账户并不是完全的管理员,因为默认情况下Win7系统的系统管理员Administrator账户是处于禁用状态的,需要手动取消账户禁用设置,从系统管理中开启管理员Administrator账户。下面有两个方法,大家可以尝试一下:一:1、开始菜单,找到“所有程序——附件”,右击“命令提示符”选择“以管理员身份运行”。2、
2015-01-24 22:27:42
1190
转载 PID控制通俗解释与PID参数的整定方法--以温控系统为例
PID是比例、积分、微分的简称,PID控制的难点不是编程,而是控制器的参数整定。参数整定的关键是正确地理解各参数的物理意义,PID控制的原理可以用人对炉温的手动控制来理解。阅读本文不需要高深的数学知识。 1.比例控制有经验的操作人员手动控制电加热炉的炉温,可以获得非常好的控制品质,PID控制与人工控制的控制策略有很多相似的地方。下面介绍操作人员怎样用比例控制的思想来手动
2014-12-19 22:50:32
22795
原创 Hello ASM -- a+b-c
说明:虽然本次博文的主题并不是VC,但同为程序设计,而且主要也是因为自己在学习汇编的过程中有一些感悟,那就是: 在程序设计过程中,我认为我们首先应该琢磨一下程序的运行流程或者算法流程,之后再相应编写程序,有了这个思想流程,那么我想用什么语言应该都可以实现了,这样应该也是最有效率的,好过于反复修改方案带来的消极情绪......但是对于这个思想流程的细节程度我们怎么把握也是需要根据实际情况考
2014-12-13 15:45:22
852
原创 最小二乘法直线拟合及其Matlab实现
最小二乘法,通常用在我们已知数学模型,但是不知道模型参数的情况下,通过实测数据,计算数学模型,例如,在题目中,数学模型就是直线方程y=ax+b,但是不知道直线方程的a和b。 本来呢,我们只需要两组(xi,yi),就可以解得a和b,但是由于实测数据都存在误差,所以,我们很容易想到一个办法,我们测很多组数据来让我的a和b更加准确。 “我们测很多组数据来让我的a和b更加准确” ,那
2014-12-10 16:47:57
36426
转载 kalman滤波--运动跟踪
kalman滤波大家都很熟悉,其基本思想就是先不考虑输入信号和观测噪声的影响,得到状态变量和输出信号的估计值,再用输出信号的估计误差加权后校正状态变量的估计值,使状态变量估计误差的均方差最小。具体它的原理和实现,我想也不用我在这里费口舌,但这个理论基础必须的有,必须得知道想用kalman滤波做跟踪,必须得先建立运动模型和观察模型,不是想用就能用的。如果不能建立运动模型,也就意味着你所要面对的问题不
2014-12-03 17:46:38
1611
转载 CamShift算法--CamShift算法
1.原理在了解了MeanShift算法以后,我们将MeanShift算法扩展到连续图像序列(一般都是指视频图像序列),这样就形成了CamShift算法。CamShift算法的全称是"Continuously Apaptive Mean-SHIFT",它的基本思想是视频图像的所有帧作MeanShift运算,并将上一帧的结果(即Search Window的中心和大小)作为下一帧MeanShift算
2014-12-03 17:37:42
802
转载 CamShift算法--Mean Shift算法
这里来到了CamShift算法,OpenCV实现的第二部分,这一次重点讨论Mean Shift算法。在讨论Mean Shift算法之前,首先讨论在2D概率分布图像中,如何计算某个区域的重心(Mass Center)的问题,重心可以通过以下公式来计算:1.计算区域内0阶矩for(int i=0;i for(int j=0;j M00+=I(i,j)2.区域内1阶矩:
2014-12-03 17:04:40
516
转载 CamShift算法--Back Projection
CamShift算法,即"Continuously Apative Mean-Shift"算法,是一种运动跟踪算法。它主要通过视频图像中运动物体的颜色信息来达到跟踪的目的。我把这个算法分解成三个部分,便于理解:1) Back Projection计算2) Mean Shift算法3) CamShift算法在这里主要讨论Back Projection,在随后的文章中继续讨论后面两个算
2014-12-03 17:01:24
702
转载 CamShift算法--认知
CamShitf算法,即Continuously Apative Mean-Shift算法,基本思想就是对视频图像的多帧进行MeanShift运算,将上一帧结果作为下一帧的初始值,迭代下去。基本步骤为:1.选取关键区域2.计算该区域的颜色概率分布--反向投影图3.用MeanShift算法找到下一帧的特征区域4.标记并重复上述步骤 该算法的关键就
2014-12-03 16:56:10
758
原创 反向投影图
图像的反向投影图是用输入图像的某一位置上像素值(多维或灰度)对应在直方图的一个bin上的值来代替该像素值,所以得到的反向投影图是单通的。用统计学术语,输出图像象素点的值是观测数组在某个分布(直方图)下的概率。 其中b(xi)表示在位置xi上像素对应的直方图第b(xi)个bin,直方图共m个bin,qu表示第u个bin的值
2014-12-03 16:49:04
744
原创 Booth除法器设计
1. 除法器原理(补码除法运算)被除数和除数都用补码表示,符号位参加运算,商和余数也用补码表示。Booth除法需要考虑以下问题:1. 够减的判断:当两数同号时,实际应做减法;两数异号时,实际应做加法。2. 上商规则:3. 商符的确定:商符是在求商的过程中自然形成的,第一次得出的商就是实际应得的商符4. 求新部分余数:5.末位恒置12.
2014-12-01 14:26:13
3255
2
原创 保存应用程序的配置信息
应用程序启动后,用户会有各种操作。当用户下一次启动应用程序时,就会希望保持上一次的操作状态。或者游戏结束后,需要将最高分记录等等。因此,我们需要在程序关闭的时候,将一些必要的变量保存下来,并且在下一次程序启动的时候,读取这些变量。通常,可以把这些变量保存在“配置文件”中。配置文件一般以 .ini 为扩展名。例如在 \windows 文件夹里面可以找到很多 .ini 文件。.ini 文件的内
2014-11-30 10:40:56
871
emu8086-汇编集成开发软件
2014-12-13
OpenCV图像拼接ImageStitching
2014-12-07
TTDM-天天点名
2014-10-23
基于文档视图的OpenCV基本框架
2014-07-28
软硬结合的智能时钟程序设计
2014-05-10
C语言-电话号码管理系统
2014-05-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人