随笔 - 252  文章 - 0  评论 - 2269  阅读 - 542万
08 2012 档案
Android开发历程_15(AppWidget的使用)
摘要:Appwidget就是手机应用中常常放在桌面(即home)上的一些应用程序,比如说闹钟等。这种应用程序的特点是它上面显示的内容能够根据系统内部的数据进行更新,不需要我们进入到程序的内部去,比如说闹钟指针的摆动等。本节内容就简单的介绍下实现这种功能所用到的appwidget技术,通过3个例子由浅入深来学会使用它。参考资料是mars的教程。 实验基础: 自己实现一个AppWidget的步骤如下: 1. 在src目录下新建一个名为xml的文件夹,在该文件夹下新建一个xml文件,该xml文件的根标签为appwidget-provider. 该xml文件主要是对所建立的appwidget的一个... 阅读全文
posted @ 2012-08-27 21:33 tornadomeet 阅读(7398) 评论(1) 推荐(1) 编辑
Android开发历程_14(广播机制)
摘要:广播机制按照字面理解就是广于播之,在计算机网络中这个词比较常见,它的意思是说发送端把信息发送出去,是以广播的方式发送出去,该信息可以同时被多个接收端介绍,当然接收端也可以不接收,另外接收端介绍到这信息后怎么处理广播的发送端也是不用考虑的。因此广播机制还是挺有用的,利用广播信息可以为触发的一些事件发送消息。Android中的广播机制可以参考mars老师的这张图片: 如图所示,有多个广播接收者在android中注册过,当一个事件产生后,它可以发送一个广播信息,然后这些接收者来接收该信息。广播接收者的实现一般是写成一个类,该类继承android提供的类BroadcastReceiver,并... 阅读全文
posted @ 2012-08-27 09:40 tornadomeet 阅读(4217) 评论(4) 推荐(2) 编辑
OpenGL_Qt学习笔记之_07(闪烁的星星)
摘要:这一小节我们要完成的任务是:将一张背景是黑色,中间是白亮色的星星图片和五颜六色的颜色进行色彩融合,变成一颗彩色的星星。并且让这些星星自转和公转,可以控制自转和公转的速度,另外也能控制所有的星星是否能够闪烁。 实验基础 色彩融合知识: 刚开始提到由黑白的星星变成彩色的星星用到的是色彩融合的知识,关于色彩融合,在上篇文章OpenGL_Qt学习笔记之_06(纹理滤波和光照)已经有了个简单的介绍,不过该知识点并没有想象中的那么简单。当我们有了一些简单的色彩混合知识后,可以通过下面这个函数来更一步加深我们的理解。 void glColor4f(GLfloat red,GLfloat gre... 阅读全文
posted @ 2012-08-26 10:26 tornadomeet 阅读(7947) 评论(0) 推荐(2) 编辑
OpenGL_Qt学习笔记之_06(纹理滤波、光照和色彩融合)
摘要:本次实验主要是学习下opengl中光照的使用方法,opengl中的光照分为环境光,漫射光,镜面光,反射光4种,这里主要是学习环境光和漫射光的设置,同时对比下opengl中支持的几种纹理滤波方式的效果,另外也可以加入色彩融合效果。 纹理滤波 在上篇文章OpenGL_Qt学习笔记之_05(纹理映射)中我们采用的是GL_LINEAR方式进行滤波的,opengl还支持GL_NEAREST, GL_NEAREST_MIPMAP_NEAREST, GL_LINEAR_MIPMAP_NEAREST, GL_NEAREST_MIPMAP_LINEAR, GL_LINEAR_MIPMAP_LI... 阅读全文
posted @ 2012-08-25 10:55 tornadomeet 阅读(12435) 评论(1) 推荐(0) 编辑
OpenGL_Qt学习笔记之_05(纹理映射)
摘要:纹理映射基础知识 什么叫纹理映射,一开始我也不明白,感觉这个词好专业(毕竟没有学过图形学),后面经过网上查找资料和这次实验稍微理解了点。纹理映射简单的讲,就是把一个纹理(其实说白了,纹理可以理解为一幅图像)映射到空间物体的表面上,因此纹理映射也叫贴图,这个表明不一定是矩形,比如说我可以是球面,或者是任意曲面。在上一篇文章OpenGL_Qt学习笔记之_04(3D图形的绘制和旋转)中,我们绘制的空间体的表面都是一些光滑的颜色,如果要在其表面采用那种方法绘制图像的话,则必须利用微分的思想,一个一个的绘制小图像,然后拼接起来,可想而知,这个过程是多么的复杂,opengl的纹理映射就可以很好的... 阅读全文
posted @ 2012-08-24 20:10 tornadomeet 阅读(14022) 评论(4) 推荐(2) 编辑
OpenGL_Qt学习笔记之_04(3D图形的绘制和旋转)
摘要:绘制四棱锥 四棱锥由5个面构成一个封闭的立体图,其中4个共顶点的侧面是三角形,底面是个四边形。如果我们要绘制一个3D的四棱锥只需要绘制这5个面即可,绘制的方法和前一篇文章OpenGL_Qt学习笔记之_03(平面图形的着色和旋转)的相同。只不过这里的顶点坐标是3维的,所以图像深度那一维不一定为0。因此我们可以事先计算好四棱锥各个顶点的坐标,这对学过立体几何的人来说应该是小case了。然后绘制每个面就可以。 注意,在opengl中绘制每个面时,所有面给出的顶点的顺序都要按照逆时针或者顺时针(我这里采用的是逆时针),这样才能保证所绘制出来的图像时正确的。 现在我们在paintGL中开始绘制... 阅读全文
posted @ 2012-08-24 15:41 tornadomeet 阅读(19159) 评论(1) 推荐(0) 编辑
OpenGL_Qt学习笔记之_03(平面图形的着色和旋转)
摘要:在这一节中主要简单介绍下怎样给平面几何着色,以及怎样让绘制出来的几何图形旋转起来。在上一节OpenGL_Qt学习笔记之_02(绘制简单平面几何图形) 中已经介绍了如何利用opengl画一些简单的图像,那么这一节就在上面的基础上给它着色,且让他旋转。 实验基础 首先来看着色,其实着色在上篇文章中已经用过,使用的是函数glColor3f()。一旦我们使用这个函数着色后且不更改颜色,则后面所绘的图形都是这个颜色了。我们给多边形着色时,表面上看都是给它的顶点着色,其实因为我们在initializeGL()函数中已经设置过glShapeModel(GL_SMOOTH),即颜色阴影是平滑模式... 阅读全文
posted @ 2012-08-23 21:47 tornadomeet 阅读(11249) 评论(0) 推荐(1) 编辑
OpenGL_Qt学习笔记之_02(绘制简单平面几何图形)
摘要:本文来讲讲怎样使用opengl来画平面几何图形,这一节本来是很简单的,因为某些问题都弄大半天了。当然,这还是按照NeHe的教程来的学习的。这次实现的功能是在窗口中画一个三角形,一个矩形,一个圆形。首先来简单的看一下opengl中的基本坐标规则,如下图所示: 假设左下角那个点是人的眼睛观察的位置,则向左为x正方向,向上为y的正方向(这点与opencv中不同),向里为z的正方向。下面来看看怎么绘制平面几何图形。在设置好需要画的几何图形的属性后,比如颜色信息,就以glBegin()开始,以glEnd()结束,glBegin()中的参数为所画几何图形的类型,比如说GL_ TRIANGLES代表三角形. 阅读全文
posted @ 2012-08-23 15:56 tornadomeet 阅读(21869) 评论(3) 推荐(4) 编辑
OpenGL_Qt学习笔记之_01(创建一个OpenGL窗口)
摘要:很早就想学opengl的,一直没时间,今天心血来潮初步了解了下opengl。Opengl是对2D和3D图形支持很好,有非常多的优化函数,因为opengl的主要目标是图形功能函数上,所以它对图形界面的支持并不完善。当然了,作为一个跨平台的开源库,这是能理解的,因为每个平台开发界面用的工具不同,如果它只支持其一,那么私心也太重了,还不如节省精力放在核心的代码上。Qt的UI函数很多,它的Opengl封装很好,将opengl的函数和Qt的界面结合了起来,这主要是通过Qt中QGLWidget这个类来实现。所以一般我们开发opengl,且要用到Qt的界面时,这些类都可以从QGLWidget继承过来。本次试 阅读全文
posted @ 2012-08-22 22:30 tornadomeet 阅读(47502) 评论(16) 推荐(2) 编辑
Android开发历程_13(Service的使用)
摘要:Service在android中的地位和activity,只是它没有单独的界面,一般都是在后台运行,主要是用来运行一些消耗时间比较长的任务。我们可以用它来发送intent来更新activity的UI。另外需要注意的是service既不是一个单独的进程,也不是一个单独的线程,它与activity一起在同一个进程中。 关于android的sevice,网上这篇文章对service做了比较详细的介绍,并通过启动音乐播放器的例子来讲解service:http://www.cnblogs.com/allin/archive/2010/05/15/1736458.html Service的生命周期... 阅读全文
posted @ 2012-08-20 12:53 tornadomeet 阅读(4635) 评论(0) 推荐(0) 编辑
Android开发历程_12(Handler的使用)
摘要:本文主要介绍Android中Handler的简单使用方法,Handler跟多线程,消息队列联系很紧密,在平常的实际程序开发中比较常见。本文分为4个简单的例子来学校handler。 参考资料为Mars老师的教程,http://www.mars-droid.com/. 开发环境为android4.1. 例1 这个例子是最简单的介绍handler使用的,是将handler绑定到它所建立的线程中. 本次实验完成的功能是:单击Start按钮,程序会开始启动线程,并且线程程序完成后延时1s会继续启动该线程,每次线程的run函数中完成对界面输出nUpdateThread...文字,不停的运行... 阅读全文
posted @ 2012-08-19 22:06 tornadomeet 阅读(5301) 评论(0) 推荐(1) 编辑
目标跟踪学习笔记_5(opencv中kalman点跟踪例子)
摘要:一些网络资料 关于Kalman滤波器的理论,其数学公式太多,大家可以去查看一些这方面的文献.下面这篇文章对Kalman滤波做了个通俗易懂的介绍,通过文章举的例子可以宏观上理解一下该滤波器,很不错,推荐一看: http://www.cnblogs.com/feisky/archive/2009/11/09/1599247.html, 他的另一篇博客http://www.cnblogs.com/feisky/archive/2009/12/04/1617287.html中介绍了opencv1.0版本的卡尔曼滤波的结构和函数定义等。 另外博文:http://blog.csdn.net/o... 阅读全文
posted @ 2012-08-19 15:00 tornadomeet 阅读(44953) 评论(10) 推荐(3) 编辑
特征点检测学习_2(surf算法)
摘要:在上篇博客特征点检测学习_1(sift算法)中简单介绍了经典的sift算法,sift算法比较稳定,检测到的特征点也比较多,其最大的确定是计算复杂度较高。后面有不少学者对其进行了改进,其中比较出名的就是本文要介绍的surf算法,surf的中文意思为快速鲁棒特征。本文不是专门介绍surf所有理论(最好的理论是作者的论文)的,只是对surf算法进行了下整理,方便以后查阅。 网上有些文章对surf做了介绍,比如: http://wuzizhang.blog.163.com/blog/static/78001208201138102648854/ surf算法原理,有一些简单介绍. ht... 阅读全文
posted @ 2012-08-17 23:51 tornadomeet 阅读(79771) 评论(34) 推荐(8) 编辑
特征点检测学习_1(sift算法)
摘要:sift算法在cv领域的重要性不言而喻,该作者的文章引用率在cv界是number1.本篇博客只是本人把sift算法知识点整理了下,以免忘记。本文比较早的一篇博文opencv源码解析之(3):特征点检查前言1中有使用opencv自带的sift做了个简单的实验,而这次主要是利用Rob Hess的sift源码来做实验,其实现在的opencv版本中带的sift算法也是Rob Hess的,只是稍微包装了下。 首先网上有不少文章介绍了sift算法,写得都不错,比如: http://www.cnblogs.com/cfantaisie/archive/2011/06/14/2080917.html... 阅读全文
posted @ 2012-08-16 22:25 tornadomeet 阅读(43407) 评论(7) 推荐(6) 编辑
opencv源码解析之(6):hog源码分析
摘要:一、网上一些参考资料 在博客目标检测学习_1(用opencv自带hog实现行人检测) 中已经使用了opencv自带的函数detectMultiScale()实现了对行人的检测,当然了,该算法采用的是hog算法,那么hog算法是怎样实现的呢?这一节就来简单分析一下opencv中自带 hog源码。 网上也有不少网友对opencv中的hog源码进行了分析,很不错,看了很有收获。比如: http://blog.csdn.net/raocong2010/article/details/6239431 该博客对该hog算法中用到的block,cell等概念有一定的图标解释... 阅读全文
posted @ 2012-08-15 20:42 tornadomeet 阅读(77002) 评论(32) 推荐(19) 编辑
总结系列_13(Qt使用总结,续...)
摘要:QtCreator中使用的是MinGW进行编译的,所以在windows下如果想要下载QtCreator就需要下载对应mingw的版本,而不是vs的,否则是编译不了的。或者自己下载Qt源码库,用Cmake中选中MinGW重新编译即可。所以如果安装Qt libraries 4.8.2 for Windows (minGW 4.4, 318 MB),则必须先安装QtCreator,因为QtCreator安装过程中会自动安装MinGW,而Qt libraries 4.8.2 for Windows (minGW 4.4, 318 MB)的安装又必须使用MinGW。因此这2者的顺序不可颠倒。但是自从Qt 阅读全文
posted @ 2012-08-09 09:33 tornadomeet 阅读(10967) 评论(3) 推荐(1) 编辑
总结系列_12(XML使用总结,续...)
摘要:1. xml的注释不能出现在属性值代码中,不能出现在标记中。且注释格式为<!--注释内容-->2. xml语句结束后并不需要结束符号,比如说分号。3. xml中也是用alt+/来起提醒作用的。4. xml中的标签分为根标签和子标签。5. 线性布局中: android:layout_weight属性是指不同的控件在activity中占有体积大小的比例。 android:paddingLeft指内边距左的距离,即控件内文字离控件左边边界的距离。其它的类推。 android:gravity指控件内文字相对于控件本身的方向属性,长度为dip,与像素独立的长度。 android:backgr 阅读全文
posted @ 2012-08-09 09:09 tornadomeet 阅读(1177) 评论(0) 推荐(0) 编辑
总结系列_11(Andriod常见错误总结,续...)
摘要:1) 在实现从1个activity跳转到另一个activity时出现如下错误: Description Resource Path Location Type The method setOnClickListener(View.OnClickListener) in the type View is not applicable for the arguments (HelloworldActivity.MyButtonListener) HelloworldActivity.java /helloworld/src/com/example/he... 阅读全文
posted @ 2012-08-09 09:06 tornadomeet 阅读(7642) 评论(0) 推荐(0) 编辑
总结系列_10(Android开发总结,续...)
摘要:先装完jdk,再装elicpse和android,这2个只需解压到相应目录即可,无需安装,因为这2个程序的安装没有经过注册表。最后安装adk,在线安装的话就是最新版本的了,这时andriod-sdk版本可能不够,运行程序时会自动提示,那时更新即可。在工程中,每一个activity都对应一个xml文件,xml文件主要是控制各控件的位置和属性的.asserts目录下可以存放任何文件,res目录下也可以存放任意文件,且res下的文件会在gen目录下的R.java文件中自动生成一个全局id。res目录下的values目下的strings.xml中的控件也是每个控件都在R.jar中对应一个id号。当然l 阅读全文
posted @ 2012-08-09 08:58 tornadomeet 阅读(1283) 评论(0) 推荐(0) 编辑
Android开发历程_11(AnimationListener的使用方法)
摘要:AnimationListener听名字就知道是对Animation设置监听器,说简单点就是在Animation动画效果开始执行前,执行完毕和重复执行时可以触发监听器,从而执行对应的函数。这种模式在实际运行过程中应该还是蛮有用的。 参考资料为Mars老师的教程,http://www.mars-droid.com/. 开发环境为android4.1. AnimaitonListener的使用方法主要是在Animation上设置一个监听器,即采用Animation的方法成员setAnimationListener().其参数就是监听器的函数。 现在来说说本次实验的功能,主要有2个按钮... 阅读全文
posted @ 2012-08-07 22:37 tornadomeet 阅读(15817) 评论(0) 推荐(1) 编辑
Android开发历程_10(LayoutAnimationController的初步使用)
摘要:在前面的博文Android开发历程_8(Tween Animation的2种属性设置方法)和博文Android开发历程_9(Frame Animation的使用)中介绍了Animation的初步使用,但是Tween Animation和Frame Animation的动态效果只适应一个控件,或者说多个控件同时执行一种效果。如果我们需要一个界面中的多个控件按照相同的动画方式但是每个控件完成该动画的时刻不同的话,就可采用本节讲的LayoutAnimationController来方便的完成了。 参考资料为Mars老师的教程,http://www.mars-droid.com/. 首先我... 阅读全文
posted @ 2012-08-07 09:58 tornadomeet 阅读(9722) 评论(3) 推荐(0) 编辑
Android开发历程_9(Frame Animation的使用)
摘要:Amination的整体使用有2种方法,即Tween Animation和Frame Animation,在博客Android开发历程_8(Tween Animation的2种属性设置方法) 中已经介绍了Tween Animation的使用方法,且讲到了其2种属性设置方式。这一节就来看看Frame Animation的使用。参考资料为Mars老师的资料。 Frame Animation的应用不是很广,它主要是将一张张图片串联起来播放,人眼看上去就感觉在动一样,就是利用这种特性到达动态效果。所以我们必须提前准备各种能组成动画的图片。 使用时需要在res下的drawable文件夹中放入... 阅读全文
posted @ 2012-08-06 22:02 tornadomeet 阅读(1471) 评论(0) 推荐(0) 编辑
Android开发历程_8(Tween Animation的2种属性设置方法)
摘要:在Android开发中,Animation是用来给控件制作效果的。大多数的控件都可以用这个类,这个类包含了4种基本动作,分别为移动,旋转,淡入淡出,缩放。在使用Animation时,可以在.java文件中用java代码对其进行设置,这样的优点是可以方便调试程序效果;另外一种方法就是在xml中对控件的属性做设置,好处是代码的重用性比较高,缺点是不方便调试。本节中就简单介绍下这2种方法的使用流程。参考资料为mars老师的教程。一、在java代码中使用Animation. 在java代码中使用Animation主要分为下面4个步骤。 创建一个AnimationSet类,AnimationSe... 阅读全文
posted @ 2012-08-06 19:54 tornadomeet 阅读(3695) 评论(0) 推荐(1) 编辑
目标检测学习_1(用opencv自带hog实现行人检测)
摘要:本文主要介绍下opencv中怎样使用hog算法,因为在opencv中已经集成了hog这个类。其实使用起来是很简单的,从后面的代码就可以看出来。本文参考的资料为opencv自带的sample。 关于opencv中hog的源码分析,可以参考本人的另一篇博客:opencv源码解析之(6):hog源码分析 开发环境:opencv2.4.2+Qt4.8.2+ubuntu12.04+QtCreator2.5. 实验功能: 单击OpenImage按钮,选择需要进行人检测的一张图片,确定后自动显示出来。该图片的大小没限制。 单击PeopleDetect按钮,则程序会自动对该图片进行行人检测,且... 阅读全文
posted @ 2012-08-03 16:04 tornadomeet 阅读(67471) 评论(17) 推荐(5) 编辑

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

阿萨德发斯蒂芬
点击右上角即可分享
微信分享提示