一、软件设计的基本原理和采用的主要方法(算法)与技术
算法:图像读入后,把数据放到数组中去。
灰度化用的是最终像素=0.3*R+0.59*B+0.11*G这个公式
反色使用255减去原像素得到最终像素
怀旧效果用的是0.393*R+0.769*G+0.189*B
高斯模糊用的是矩阵的卷积远算,算子是1/16{1,2,1,2,4,2,1,2,1},高斯模糊在模糊的同时有考虑每个像素的比重,所以边缘得以保留下来。
拉普拉斯用的3*3的算子,{1,1,1,1-8,1,1,1,1}
素描效果的实现参考了ps中的图层,第一个图层是灰度图,第二个图层是灰度图反相,然后用最小值滤波,最后是两个图层叠加。
图层的叠加,以灰度图为基色,处理过的图层为混合色,结果色=基色+基色*混合色/(255-混合色),最终会使基色图朝变亮的方向发展,对比度增加。
四、实现的过程与步骤
(用visio画出软件架构并解释)
五、遇到的困难与获得的主要成果
困难:Android平台的Bitmap的一些特性不太熟悉,Bitmap在内存中的存贮格式不太清楚,以及canvas的一些属性和ColorMatrix第一次接触。
主要成果:Bitmap加深了了解,Android平台绘图的基础知识有了一个大概的全貌,细节方面还要查api。
六、测试与运行记录
测试效果、结果
左边是ps上做的效果,右边是我的软件实现的效果。
七、结果分析与小结
开发任务