2004毕业于山东大学齐鲁软件学院,软件工程专业。主要专注于图像处理算法学习与研究,计算机视觉技术开发应用,深度学习在计算机视觉领域应用。两本书籍《Java数字图像处理-编程技巧与应用实践》、《OpenCV On Android编程实践》作者
每次看一下android编程都是浏览一下文档,Setup下开发环境,跑个Hello World 就以为自己会啦,这样不行啊!下决心踏踏实实学习一下android编程,UI都调不 好,所以还要拒绝浮躁,认认真真的学习,顺便记录一下学习的历程。
很多图表库都支持散点图的线性回归分析,可以显示线性回归很典型就是google chart与highchart都支持这个功能,通过散点数据计算线性回归得到公式,然后 插值生成即可。 线性回归数据分析 线性回归分析,用来对一组数据实现线性建模,分析线性走势,从而实现对未来 数据的走势预期,线性回归分析是最简单也是最基础的数据回归分析。
基于JAVA Swing实现的自定义组件可折叠的JPanel组件 基本思想: 可折叠面板,分为两个部分-头部面板与内容面板 头部面板– 显示标题,以及对应的icon图标,监听鼠标事件决定内容面板隐藏或者显示 内容面板– 普通的JPanel组件。
好久之前,当我第一次看到这个算法时候,我就爱上它了,那个时候我不懂什么是高 斯金字塔,但是我知道埃及有金字塔。一番研究之后,搞懂了什么是图像金字塔于是 我写了一篇文章在我的博客上,可以看这里: http://blog.csdn.net/jia20003/article/details/9116931 但是金字塔有什么应用呢,可能最广泛的一个应用就是实现图像融合和图像的无缝 拼接于是我决定在研究一番,于是就有了这篇文章。
本来想自己做个库的,毅力不够啊,所以放出源代码 当前实现的框架功能有: 1. 支持IE6+以上版本,支持Chrome, 支持FireFox 2. 动画加载机制 3. tooltip支持 4. legend支持 5. 功能丰富的参数设置 当前支持的图形种类有两种:饼图与折线图,将来也许会不定期更新,不断完善! 希望还有点毅力和时间做话。
Kendo UI开发总结 By Gloomyfish on 2013-04-25 在Grid中支持分页刷新: scrollable: {virtual : true }, 在Grid的DataSource中添加分页支持: serverPaging: tru...
最近一直在研究浏览器端的图形图表绘制技术,从种类上可以分为两种: 一类是矢量图形绘制API,典型代表是微软的VML与W3C主推的SVG 另外一类是基于像素的绘制API,典型代表是HTML5 Canvas 背景介绍: VML是微软推出的基于IE的矢量图形绘制API,注意VML只能在IE中支持,而SVG是W3C 推出的矢量图型API,显然IE不待见它,所以只能在非IE的浏览器上支持,IE上要想显示 SVG格式的图形,必须额外安装插件。
基本思路: 主要是利用HTML5 Canvas实现饼图绘制,绘制弧度的API主要是使用 context.arc与lineto两个API。 实现的功能有: 1. 支持标签Legend显示或者隐藏 2.
使用GruntJS链接与压缩多个JavaScript文件 自己写了个简单的HTML5 Canvas的图表库,可以支持饼图,折线图,散点图,盒子图 柱状图,同时支持鼠标提示,绘制过程动画效果等。
正统的HTML5 Canvas中如下代码 ctx.lineWidth = 1; ctx.beginPath(); ctx.moveTo(10, 100); ctx.lineTo(300,100); ctx.stroke(); 运行结果绘制出来的并不是一个像素宽度的线 感觉怎么好粗啊,跟常常见到的网页版各种绘制线效果 很不一样,难道HTML5 Canvas就没想到搞好点嘛 其实这个根本原因在于Canvas的绘制不是从中间开始的 而是从0~1,不是从0.5~1 + 0~0.5的绘制方式,所以 导致fade在边缘,看上去线很宽。
HTML5 Canvas自定义圆角矩形与虚线(RoundedRectangle and Dash Line) 实现向HTML Canvas 2d context绘制对象中添加自定义的函数功能演示,如何绘制虚线 以及控制虚线间隔大小,学会绘制圆角矩形的技巧。
HTML5 Canvas阴影用法演示 HTML5 Canvas中提供了设置阴影的四个属性值分别为: context.shadowColor = “red” 表示设置阴影颜色为红色 context.shadowOffsetX = 0表示阴影相对TEXT的水平距离,0表示两者水平位置重合 context.shadowOffsetY = 0表示阴影相对TEXT的垂直距离,0表示两者垂直位置重合 context.shadowBlur = 10 阴影模糊效果,值越大模糊越厉害。
HTML5 Canvas 填充与描边(Fill And Stroke) 演示HTML5 Canvas Fill 与Stroke文字效果,基于Canvas如何实 现纹理填充与描边。 一:颜色填充与描边 颜色填充可以通过fillStyle来实现,描边颜色可以通过strokeStyle来实现。
HTML5 Canvas动画效果演示 主要思想: 首先要准备一张有连续帧的图片,然后利用HTML5 Canvas的draw方法在不同的时间 间隔绘制不同的帧,这样看起来就像动画在播放。 关键技术点: JavaScript 函数setTimeout()有两个参数,第一个是参数可以传递一个JavaScript方法, 另外一个参数代表间隔时间,单位为毫秒数。
详细解释HTML5 Canvas中渐进填充的参数设置与使用,Canvas中透明度的设置与使 用,结合渐进填充与透明度支持,实现图像的Mask效果。 一:渐进填充(Gradient Fill) Canvas支持两种渐进填充方式,一种为线性渐进填充(Line Gradient Fill),另外一种称 为经向渐变填充(RadialGradient Fill)。
演示HTML5 Canvas鼠标事件,获取Canvas对象上的鼠标坐标,演示键盘事件 通过键盘控制Canvas上对象移动。 Canvas对象支持所有的JavaScript的鼠标事件,包括鼠标点击(MouseClick), 鼠标按下 (Mouse Down), 鼠标抬起(Mouse Up...
HTML5 Canvas中提供了实现图形平移,旋转,放缩的API。 平移(translate) 平移坐标translate(x, y)意思是把(0,0)坐标平移到(x, y),原来的(0,0)坐标则变成(-x, -y) 图示如下: 任何原来的坐标点p(ox, oy)在translate之后的坐标点为p(ox-x, oy-y),其中点(x, y)为平移 点坐标translate(x, y)。
一:使用缓存技术实现预绘制,减少重复绘制Canvs内容 很多时候我们在Canvas上绘制与更新,总是会保留一些不变的内容,对于这些内容 应该预先绘制缓存,而不是每次刷新。 直接绘制代码如下: context.
纯JavaScript实现HTML5 Canvas六种特效滤镜 小试牛刀,实现了六款简单常见HTML5 Canvas特效滤镜,并且封装成一个纯 JavaScript可调用的API文件gloomyfishfilter.js。
一:什么是SVG SVG是1999由W3C发布的2D图形描述语言,纯基于XML格式的标记语言,SVG的 全称是可扩展的矢量图形跟传统的Raster方式的图形(JPG, PNG, GIF等)有很大的差 别。
一:HighChart介绍 基于JQuery的纯JavaScript的图标库,支持各种图表显示,同时还支持Mootools 与Prototype详细版本支持在这里: JQuery 1.3.2 - 1.9.x. 2.0.x for modern browsers Mootools 1.2.5 - 1.4.5 Prototype 1.7 支持目前市场几乎所有的主要浏览器IE, Chrome, FF,Safari, Opera等。
数学基础: 二维高斯模糊的数学表达如下: 简单表达为G(x, y) = G(x)G(y)由此,对一个二维的像素矩阵可以分别在水平与垂直方向 进行一维高斯模糊其效果等同与二维高斯模糊效果。
PS中有一种滤镜可以让图像看上去好像历经岁月,微微泛黄 英文中这种图像特效被称为Sepia Tone Effect 直译过来的意思 就是黄褐色特效。它的基本处理算法如下: 1. 首先对图像重新计算RGB值,计算公式如下: int fr= (int)(((double)tr * 0.
一:图像金字塔基本操作 对一张图像不断的模糊之后向下采样,得到不同分辨率的图像,同时每次得到的 新的图像宽与高是原来图像的1/2, 最常见就是基于高斯的模糊之后采样,得到的 一系列图像称为高斯金字塔。
主要思想是借助Canvas自己的API - toDataURL()来实现,整个实现 HTML + JavaScript的代码很简单。 window.onload = function() { draw(); var saveButton = document.
图像处理之距离变换 概述 距离变换是二值图像处理与操作中常用手段,在骨架提取,图像窄化中常有应用。距离 变换的结果是得到一张与输入图像类似的灰度图像,但是灰度值只出现在前景区域。并 且越远离背景边缘的像素灰度值越大。
泛洪填充算法(Flood Fill Algorithm) 泛洪填充算法又称洪水填充算法是在很多图形绘制软件中常用的填充算法,最熟悉不过就是 windows paint的油漆桶功能。算法的原理很简单,就是从一个点开始附近像素点,填充成新 的颜色,直到封闭区域内的所有像素点都被填充新颜色为止。
TF-IDF计算: TF-IDF反映了在文档集合中一个单词对一个文档的重要性,经常在文本数据挖据与信息 提取中用来作为权重因子。在一份给定的文件里,词频(termfrequency-TF)指的是某一 个给定的词语在该文件中出现的频率。
基本原理: 计算四个点的增长斜率,使用双线性插值实现像素填充。 废话也懒得说啦,自己看代码吧,我从一个地方抄袭+修改了一下 源来的代码,原因是原来的代码太乱了,也太让人费解了。 运行效果: 滤镜源代码: package com.
一:数学原理 K-Means算法的作者是MacQueen, 基本的数学原理很容易理解,假设有一个像素 数据集P。我们要根据值不同将它分为两个基本的数据集合Cluster1, Cluster2,使 用K-Means算法大致如下: 假设两个Cluster的RGB值分别为112,225,2...
基本原理: JDK6u10版本以上提供了DeskTop的API接口支持,可以根据URI参数自动打开 操作系统默认的浏览器来加载对应的网页,同时借助JDK的Robot类实现自动截屏 这样就完成了对任意一个URL对应网页保存为图片。
Fuzzy C-Means聚合算法在图像分割(segmentation)和图像视觉处理中常常被用到聚合算法之 一本文是完全基于JAVA语言实现Fuzzy C-Means聚合算法,并可以运用到图像处理中实现简 单的对象提取。
前提,要打开windows command line窗口。 1。打开SQLPLUS C> sqlplus /nolog 2。连接到指定数据库 SQL>connect user/password@SID 或者 SQL>connect user/password@localhost(IP Address):1521/SID 3。
好久没有用啦,google了半天才找到命令行,一看还是这么好使~~~ C:\Program Files\Java\jdk1.6.0_20\bin>xjc D:\projects\ups-proxy\AccessRequest.
Maven中加上Velocity的依赖如下: org.apache.velocity velocity 1.5 velocity-tools velocity-tools-generic 1.
全面比较HTTP GET与POST方法 1. 基本信息比较 属性 GET方法 POST方法 历史: 通常使用GET方法发送的数据作为URL的一部分将会被浏览器保存起来 使用POST方法提交的数据则不会作为URL的一部分,当然不会浏览器保存。
基于Spring3 MVC实现基于form表单文件上传 一:杂项准备 环境搭建参考这里-http://blog.csdn.net/jia20003/article/details/8471169 二:前台页面 根据RFC1867,只要在提交form表单中声明提交方法为POST,enctype属 性声明为multipart/form-data, action声明到要提交的url即可。
Spring3 Web MVC 集成JasperReport生成PDF例子 一:环境搭建与配置 1. 安装JDK6以上版本 2. 安装STS, 下载地址如下:http://www.
pdfbox开发包下载地址:http://pdfbox.apache.org/ 程序实现了PDF文档的创建,读入,与修改PDF内容并保存。 可能有个前提,PDF文档不是加密的,如果加密怎么办,我没研究过! 源代码如下: package com.
今天是2012年的最后一天,总结一下2012年都干了些什么事情 1. 坚持在CSDN写博客一年,总结了自己过去所学,尝试了一些新技术 2. 客户的产品全面转型面向互联网与移动平台倾斜,今年4月份以后再 也没有做过任何一个基于Swing的桌面产品,新的项目全部基于WEB 3. 经历了WEB项目开发从Vrigo Server到Tomcat, 从基于OSGi的复杂架 构到WEB简单DAO/Service/Controller的架构转变。
基本流程: 一幅文字图像,一幅目标图像,文字将会被作为水印添加到目标图像中。最终生成 一幅带水印的目标图像。 基本思想: 首先对文字图像进行预处理,扫描它的每个像素提取文字图像的水平与垂直边缘。
写这篇文章是目的不是介绍Web-Service, 而是从Restful Web Service说起来剖析一下 什么才是真正的Restful Style的架构与协议,从而更好的理解web服务的设计理念与架 构本质。
没有借助任何第三方库,完全基于JAVA Socket实现一个最小化的HTTP文件下载客 户端。完整的演示如何通过Socket实现下载文件的HTTP请求(request header)发送 如何从Socket中接受HTTP响应(Response header, Response body)报文并解析与 保存文件内容。
数学基础: 什么是泊松噪声,就是噪声分布符合泊松分布模型。泊松分布(Poisson Di)的公 式如下: 关于泊松分布的详细解释看这里:http://zh.wikipedia.org/wiki/泊松分佈 关于高斯分布与高斯噪声看这里: http://blog.csdn.net/jia20003/article/details/7181463 二:程序实现 以前在图像加噪博文中现实的加高斯噪声,比较复杂。
一个基于Java Socket协议之上文件传输的完整示例,基于TCP通信完成。 除了基于TCP的二进制文件传输,还演示了JAVA Swing的一些编程技巧,Demo程序 实现主要功能有以下几点: 1.
介绍几种常见的将两张图像混合在一起形成一张新的图像的算法, 首先看一下下面算法演示中要使用的两张图像: 为了得到更好的混合效果,我选择了两张一样大小的图片。 方法一: 通过简单对于像素点的像素相乘得到输出像素值,代码演示如下: private int modeOne(in...
基本思想: 旋转矩阵在旋转角度较小的情况下可以通过两次错切变化得到旋转效果的图片,在旋 转角度较大的情况下可以通过三次错切得到等价旋转效果图像(较小角度小于15度,较 大角度在90度之内),对于旋转角度超过90度,首先旋转特殊角度90,180,270,然后 在旋转剩下的角度数。
一:Mean Shift算法介绍 Mean Shift是一种聚类算法,在数据挖掘,图像提取,视频对象跟踪中都有应用。本文 重要演示Mean Shift算法来实现图像的低通边缘保留滤波效果。其处理以后的图像有点 类似油画一样。
JAVA读取EMF文件并转化为PNG,JPG,GIF格式 使用第三方库下载地址为:http://java.freehep.org/vectorgraphics/index.html 主要思路: 使用EMFInputStream读取EMF文件,然后使用EMFRenderer对象将EMF绘制到创建 好的空白的BufferedImage里面。
本文讲演示如何通过Java Socket建立C/S方式的聊天程序。实现的功能 主要包括如下几个方面: 1. 用户登录,在线用户列表刷新 2.客户端与服务器的TCP连接,实现消息的发送与接受 3.Java Swing与多线程编程技巧 一个整体的Class关系图如下: 程序实现的服务器端UI如下: 一个JList组件用来显示在线的所有用户,一个JTextArea组件用来显示所有消息 记录。