来源:蜘蛛抓取(WebSpider)
时间:2015-02-23 08:55
标签:
mac eclipse android
当前位置: &
& 怎样使用Eclipse来开发Android源码
[] [] [] []怎样使用Eclipse来开发Android源码
责任编辑:作者:&&
【IT168 技术】用eclipse+ADT作为android开发工具,可以说是很方便的,在HelloActivity小程序里我们就感觉到eclipse功能的强大。那么,我们可以用eclipse来开发android源码吗?如果我们直接把android源码里一个工程导入eclipse,一般来说都会出现错误,说许多类库(包)找不到。 今天找到关于怎样使用eclipse来开发android源码的官方文档: 从该文档和实践可以总结出几点: 1、可以使用eclipse来编辑JAVA程序、检查错误(主要是类库包含和语法方面),但是不能在eclipse上编译运行android源码,还是得在shell中make(或mm或mmm) 2、android源码文件夹里提供有一些eclipse配置文件, .claapath:eclipse工程的配置文件,方便我们直接把android源码相应的文件和JAVA包导入工程 android-formatting.xml和android.importorder:这个很重要,主要是用来规范我们的编码风格,更容易使我们的代码风格一致 3、把android源码作为一个工程导入eclipse时,必须注意两点 1)、新建的工程必须是javaproject,不能是androidproject,否则会破坏android源码(一般是多添加文件/文件夹) 2)、导入前最好检查.classpath里的文件在android源码中是否有相应的文件(文件夹),否则也会破坏android源码(一般是多添加文件/文件夹) 总的来说: 1、用eclipse来编辑代码、检查错误 2、不在eclipse上编译、运行android源码程序,只能在命令行通过make(或mm或mmm)编译android源码 3、可以在eclipse上调试android源码程序(原理:eclipse通过ddms在emulator上进行调试),并可以单步调试、断点调试。 下面,从官方文档总结出具体怎样用eclipse来开发android源码 1、建立基本的android开发环境 请参考官方文档或<android模拟器在ubuntu8.10的安装> 2、编译android源码 android源码根目录下通过make进行编译,请注意一些配置,具体可参考<android源码的编译> 3、把eclipse工程配置文件复制到android源码根目录下 cp development/ide/eclipse/.classpath ./ chmod u+w .classpath # Make the copy writable 4、修改eclipse程序的配置 1)、修改eclipse缓存设置 把eclipse.ini(在eclipse的安装目录下)的3个值改为下面的值: -Xms128m -Xmx512m -XX:MaxPermSize=256m 2)、把android-formatting.xml和android.importorder导入eclipse android-formatting.xml、.classpath和android.importorder都放在development/ide/eclipse/下 android-formatting.xml用来配置eclipse编辑器的代码风格;android.importorder用来配置eclipse的import的顺序和结构。 在window-&preferences-&java-&Codestyle-&Formatter中导入android-formatting.xml 在window-&preferences-&java-&Codestyle-&OrganizeImports中导入android.importorder 3)、安装anyedit插件(可选) 在下载并导入eclipse中 5、把android源码作为一个工程导入eclipse 导入前先检查.classpath里的文件在android源码中是否有相应的文件(文件夹),否则也会破坏android源码(一般是多添加文件/文件夹),.classpath里多余的路径可删除 新建JavaProject(不是androidproject,否则会破坏android源码),选择从已存在的工程导入,工程名任意,完成。 导入时,eclipse要build工程,比较慢。导完后,一般都没有错误。 6、eclipse上调试android里的程序。 先执行: cd android源码目录 . build/envsetup.sh lunch 1 # to build the emulator emulator & # you should see a GUI picture of a phone ddms & # you should get a splufty debugging console 然后在eclipse中配置调试类型和端口: 在Run-&Debug Configurations-&Remotejavaapplication上双击,然后,&Host:&设为localhost,&Port:&设为8700,&ConnectionType&为Standard(SocketAttach) 然后&Apply& 注意,在点击&Debug&时苦出错,说8700端口被占用,那么把DDMS程序关掉,重新打开DDMS就OK了。如果提供连不到VM错误时,请注意,要先在DDMS中选中某一进程(对应某一应用程序),才能在eclipse执行Debug。 在eclipse调试时,可以设断点、单步调试。估计google团队也是这样开发、调试android应用程序的 7、编译android源码 执行: cd android源码目录 . build/envsetup.sh 那么就会多出mm/mmm等命令,mm/mmm用来编译模块(包括C、C++、JAVA程序)。我们也可以直接在android源码根目录下执行&make模块名&来编译模块。
【内容导航】
本文欢迎转载,转载请注明:转载自IT168 [
本文链接:
技术开发最新文章&&
技术开发相关文章&&
技术开发热点关注
技术开发热评文章
装机必备软件
技术开发精彩专题
All Rights Reserved. 北京皓辰网域网络信息技术有限公司. 版权所有4528人阅读
%& 数字图像处理程序作业%& 本程序能将JPG格式的彩色图像文件灰度化并进行直方图均衡% %& 输入文件:c:/test.jpg&&&&& 待处理图像%& 输出文件:PicSampleGray.bmp& 灰度化后图像%&&&&&&&&&&& PicEqual.bmp&&&&&& 均衡化后图像%%& 输出图形窗口说明%& figure NO 1&&&&&&&&&&&&&&&&& 待处理彩色图像%& figure NO 2&&&&&&&&&&&&&&&&& 灰度化后图像%& figure NO 3&&&&&&&&&&&&&&&&& 直方图%& figure NO 4&&&&&&&&&&&&&&&&& 均衡化后直方图%& figure NO 5&&&&&&&&&&&&&&&&& 灰度变化曲线%& figure NO 6&&&&&&&&&&&&&&&&& 均衡化后图像%& 1, 处理的图片名字要为 PicSample.jpg%& 2, 程序每次运行时会先清空workspace& clear all%一,图像的预处理,读入彩色图像将其灰度化PS=imread('c:/test.jpg');& %读入JPG彩色图像文件imshow(PS)&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& %显示出来& figureNO 1&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& title('输入的彩色JPG图像')imwrite(rgb2gray(PS),'PicSampleGray.bmp');&&&&&&&&&&&& %将彩色图片灰度化并保存PS=rgb2gray(PS);&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& %灰度化后的数据存入数组figure,imshow(PS)&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& %显示灰度化后的图像,也是均衡化前的样品&& figure NO 2title('灰度化后的图像')%二,绘制直方图[m,n]=size(PS);&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& %测量图像尺寸参数GP=zeros(1,256);&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& %预创建存放灰度出现概率的向量for k=0:255&&& GP(k+1)=length(find(PS==k))/(m*n);&&&&&&&&&&&&&&&& %计算每级灰度出现的概率,将其存入GP中相应位置endfigure,bar(0:255,GP,'g')&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& %绘制直方图&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& figure NO 3title('原图像直方图')xlabel('灰度值')ylabel('出现概率')%三,直方图均衡化S1=zeros(1,256);for i=1:256&&& for j=1:i&&&&&&&& S1(i)=GP(j)+S1(i);&&&&&&&&&&&&&&&&&&&&&&&&&&&&& %计算Sk&&& endend&S2=round(S1*256);&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& %将Sk归到相近级的灰度for i=1:256&&& GPeq(i)=sum(GP(find(S2==i)));&&&&&&&&&&&&&&&&&&&&&&& %计算现有每个灰度级出现的概率&&&&&&&&&&&&&&&&&& endfigure,bar(0:255,GPeq,'b')&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& %显示均衡化后的直方图&&&&&&&&&&&&&&&&&&&&&&& figure NO 4title('均衡化后的直方图')xlabel('灰度值')ylabel('出现概率')figure,plot(0:255,S2,'r')&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& %显示灰度变化曲线&&&&&&&&&&&&&&&&&&&&&&&&&&& figure NO 5legend('灰度变化曲线')xlabel('原图像灰度级')ylabel('均衡化后灰度级')%四,图像均衡化PA=PS;for i=0:255&&& PA(find(PS==i))=S2(i+1);&&&&&&&&&&&&&&&&&&&&&&&&&&&& %将各个像素归一化后的灰度值赋给这个像素endfigure,imshow(PA)&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& %显示均衡化后的图像&&&&&&&&&&&&&&&&&&&&&&&&&& figure NO 6title('均衡化后图像')imwrite(PA,'PicEqual.bmp');&
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:1026730次
积分:15502
积分:15502
排名:第235名
原创:533篇
转载:56篇
评论:384条
李立宗,就职于天津职业技术师范大学。
欢迎关注微博:。
QT+OpenCV群,
文章:20篇
阅读:26593
(1)(1)(1)(18)(6)(1)(2)(13)(7)(1)(3)(1)(37)(5)(6)(8)(3)(1)(3)(5)(3)(3)(29)(10)(3)(2)(1)(5)(2)(4)(9)(1)(14)(4)(16)(14)(4)(24)(5)(2)(11)(20)(2)(15)(7)(1)(4)(8)(5)(9)(1)(7)(6)(2)(6)(1)(5)(1)(2)(14)(11)(18)(5)(24)(10)(12)(48)(6)(9)(22)(6)(14)java使图像灰度化 - 下载频道
- CSDN.NET
&&&&java使图像灰度化
java使图像灰度化
使用java语言编写,使图像灰度化,简单的小程序,可运行
若举报审核通过,可奖励20下载分
被举报人:
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
您可能还需要
开发技术下载排行13028人阅读
RGB2551600255*255*255RGB255
YUVYRGBYUVYRGBY=0.3R+0.59G+0.11B
二、Delphi
procedure TForm1.BitBtn1Click(Sender: TObject);
& p:PByteA
& //PByteArray
& //PByteArray = ^TByteA
& //TByteArray = array[0..32767] of B
& ChangedBmp : T
& gray,x,y:
& TestBMP : T&& //
& TestBMP:=Tbitmap.C
& ChangedBmp:=Tbitmap.C
&&TestBMP.Assign(image1.Picture);
& for y := 0 to TestBMP.Height - 1 do
&&&&&&& //
&&& p := TestBMP.scanline[y];
&&& for x := 0 to TestBMP.Width - 1 do
&&& //YUVRGB, Y0.3R+0.59G+0.11B
&&&&& Gray := Round(p[3 * x + 2] * 0.3 + p[3 * x + 1] * 0.59
&&&&&&&&&&& + p[3 * x] * 0.11);
&&&&& p[3 * x + 2] := byte(Gray);
&&&&& p[3 * x + 1] := byte(Gray);
&&&&& p[3 * x] := byte(Gray);
&&& //Gray0255
&&&&& ChangedBmp.Assign(TestBMP);
&&&&& PaintBox1.Canvas.CopyMode:=
&&&&& PaintBox1.Canvas.Draw(0,0,ChangedBmp);//PaintBox
&TestBMPWillbeChangedBmp
&&&&&& TestBMP:=Tbitmap.C
ChangedBmp:=Tbitmap.C
&&&& TestBMP.DestoryChangedBmp.D
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:53835次
排名:千里之外
原创:10篇
评论:11条&&&&&& 在RGB模型中,如果R=G=B时,则彩色表示一种灰度颜色,其中R=G=B的值叫灰度值,因此,灰度图像每个像素只需一个字节存放灰度值(又称强度值、亮度值),灰度范围为0-255。一般有以下四种方法对彩色图像进行灰度化:
&&&&& 1.分量法将彩色图像中的三分量的亮度作为三个灰度图像的灰度值,可根据应用需要选取一种灰度图像。 f1(i,j)=R(i,j) f2(i,j)=G(i,j) f3(i,j)=B(i,j) 其中fk(i,j)(k=1,2,3)为转换后的灰度图像在(i,j)处的灰度值。
&&&&& 2.最大值法将彩色图像中的三分量亮度的最大值作为灰度图的灰度值。 f(i,j)=max(R(i,j),G(i,j),B(i,j))
&&&&& 3.平均值法将彩色图像中的三分量亮度求平均得到一个灰度图。 f(i,j)=(R(i,j)+G(i,j)+B(i,j)) /3
&&&&& 4.加权平均法根据重要性及其它指标,将三个分量以不同的权值进行加权平均。由于人眼对绿色的敏感最高,对蓝色敏感最低,因此,按下式对RGB三分量进行加权平均能得到较合理的灰度图像。 f(i,j)=0.11R(i,j)+0.59G(i,j)+0.3B(i,j))
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:165687次
积分:2318
积分:2318
排名:第6884名
原创:59篇
转载:23篇
评论:121条
(4)(6)(4)(3)(1)(1)(4)(1)(1)(2)(1)(1)(2)(2)(2)(3)(1)(1)(2)(2)(1)(3)(4)(3)(3)(2)(3)(1)(2)(4)(4)(2)(1)(1)(1)(1)(3)