JAVA 图形图像处理系统设计与开发(论文+源码)_Nueve

摘 要

随着计算机技术的迅速发展,数字图像处理技术在医学领域的研究和应用日益深入和广泛。现代医学已越来越离不开医学图像处理技术。医学图像处理技术在临床诊断、教学科研等方面发挥了重要的作用。计算机图像处理技术与影像技术的结合从根本上改变了医务人员进行诊断的传统方式。充分地利用这些技术可以提高诊断的正确性和准确性,提高诊断效率,降低医疗成本,可以更加充分地发挥各种医疗设备的功能。而且,随着数字化、智能化进程的深人,图像处理技术在医疗卫生领域将会有更加广阔的应用前景。

Java是Sun公司推出的一种面向对象编程语言。Java非常适合于企业网络和Internet环境,现已成为Internet中最受欢迎、最有影响的编程语言之一。目前国内使用Java语言开发的图像处理系统比较少,这也增加了这方面的研究价值。

本文首先对图像增强和图像分割中的几种算法进行了介绍,包括线性灰度变换,伪彩色处理,平滑处理,中值滤波,阈值分割,边缘检测等。然后用Java语言对上述各算法编程实现,并设计Java GUI(图形用户界面)用来显示图像处理的结果,以及创建一个数据库用于存储医学图像。

关键词:医学图像;图像增强;图像分割;面向对象

Abstract

As the computer technique’s quickly development, the image process technique having been more deeply and widely in the use and study of medical science. The modern medical science can not work well without the medical image processing technology; it has made an important use in clinical diagnosis and education study. The combination of the image processing technique and imaging technique has changed the way that traditional diagnosis. Make adequately use of this techniques will be increase accuracy, increase the efficiency of diagnosis, decrease the cost of medical treatment and make the most use of function with medical treatment equipments. Moreover, as the deeply with the arithmetic figure and the intelligence, the image processing technique will have a more wonderful future.

Java is a kind of object-oriented programming language from the company of Sun. The Java is becoming a most welcome and influence programming language which suits for the business network and the environment of internet. Currently, use Java language to developed image processing system is not very frequency in our country. So, this is a cause of increasing the value of study.

This project introduces some kinds of algorithms in image enhancement and image segmentation. It includes linear grey level transformation, pseudo-color processing, smooth processing, median filter, threshold segmentation, edge detection and so on. Then, use Java to program and realize. And show the result of image processing using Java GUI (Graphical User Interface), as well as create a database to stock medical image.

Key Words: medical image; image enhancement; image segmentation; object-oriented

目录

1  引言

2  医学图像处理概述

2.1  什么是医学图像处理

2.2  医学图像处理及研究内容

2.2.1  超声图像

2.2.2  X射线图像

2.2.3  磁共振成像

2.2.4  核医学成像

2.3  医学图像处理技术新进展

3  Java语言的特点

3.1  面向对象编程

3.1.1  抽象

3.1.2  面向对象编程的3个原则

3.2  Java的特性

3.3  Java语言的前景

4  Java语言实现图像处理

4.1  图像增强技术

4.1.1  灰度变换

4.1.2  伪彩色处理

4.1.3  平滑化处理

4.1.4  其他图像增强技术

4.2  图像分割技术

4.2.1  阈值分割法

4.2.2  边缘检测法

4.3  图像复原技术

4.4  本章小结

5  设计流程

5.1  主流程图

5.2  图像处理界面

5.3  图像的加载

5.4  图像的处理

5.5  数据库的建立

6  开发工具

6.1  JCreator概述

6.2  JCreator编辑界面的组成

结 论

致 谢

参考文献

附录A  英文原文

附录B  中文翻译

附录C  源程序

1  引言

数字图像处理技术是20世纪60年代随着计算机技术和超大规模集成电路的发展而产生、发展和不断成熟起来的一个新兴技术领域,它在理论上和实际应用中都取得了巨大的成就。

视觉是人类最重要的感知手段,图像又是视觉的基础。早期图像处理的目的是改善图像质量,它以人为对象,以改善人的视觉效果为目的。图像处理中输入的是质量低的图像,输出的是改善质量后的图像。常用的图像处理方法有图像增强、复原、编码、压缩等。首次获得成功应用的是美国喷气推进实验室(JPL)。他们对航天探测器徘徊者7号在1964年发回的几千张月球照片进行图像处理,如几何校正、灰度变换、去除噪声等,并考虑了太阳位置和月球环境的影响,由计算机成功地绘制出月球表面地图,获得了巨大的成功。随后又对探测飞船发回的近十万张照片进行更为复杂的图像处理,获得了月球的地形图、彩色图及全景镶嵌图,为人类登月创举奠定了坚实的基础,也推动了数字图像处理这门学科的诞生。在以后的宇航空间技术探测研究中,数字图像处理技术都发挥了巨大的作用。

数字图像处理技术取得的另一个巨大成就是在医学上。1972年英国EMI公司工程师Housfield发明了用于头颅诊断的X射线计算机断层摄影装置,也就是我们通常所说的CT(Computer Tomograph)。CT的基本方法是根据人的头部截面的投影,经计算机处理来重建截面图像,称为图像重建。1975年EMI公司又成功研制出全身用的CT装置,获得了人体各个部位鲜明清晰的断层图像。1979年,这项无损伤诊断技术被授予诺贝尔奖,以表彰它对人类做出的划时代贡献。

从20世纪70年代中期开始,随着计算机技术和人工智能、思维科学研究的迅速发展,数字图像处理技术向更高、更深层次发展。人们已开始研究如何用计算机系统解释图像,类似人类视觉系统理解外部世界,这被称为图像理解或计算机视觉。很多国家,特别是发达国家投入更多的人力、物力到这项研究,取得了不少重要的研究成果。其中代表性的成果是70年代末MIT的Marr提出的视觉计算理论,这个理论成为计算机视觉领域其后十多年的主导思想。

20世纪80年代末期,人们开始将其应用于地理信息系统,研究海图的自动读入、自动生成方法。数字图像处理技术的应用领域不断拓展。

数字图像处理技术的大发展是从20世纪90年代初开始的。自1986年以来,小波理论与变换方法迅速发展,它克服了傅里叶分析不能用于局部分析等方面的不足之处,被认为是调和分析半个世纪以来工作之结晶。Mallat在1988年有效地将小波分析应用于图像分解和重构。小波分析被认为是信号与图像分析在数学方法上的重大突破。随后数字图像处理技术迅猛发展,到目前为止,图像处理在图像通讯、办公自动化系统、地理信息系统、医疗设备、卫星照片传输及分析和工业自动化领域的应用越来越多。

进入21世纪,随着计算机技术的迅猛发展和相关理论的不断完善,数字图像处理技术在许多应用领域受到广泛重视并取得了重大的开拓性成就。属于这些领域的有航空航天、生物医学工程、工业检测、机器人视觉、公安司法、军事制导、文化艺术等。该技术成为一门引人注目、前景远大的新型学科。

2  医学图像处理概述

近年来,随着计算机及其相关技术的迅速发展,图像处理技术日益成熟,使得该技术深入到医学领域的方方面面,开创了数字医疗的新时代。

借助图像处理技术的有力手段,医学图像的质量和显示方法可以得到极大的改善,从而使得诊断水平可以借助于图像处理与分析手段来得到极大的改善,这不仅可以基于现有的医学图像设备来极大地提高医学临床诊断水平,而且能为医学培训、医学研究与教学、计算机辅助临床外科手术等提供电子实现手段,为医学的研究与发展提供坚实的基础,具有无可估量的价值。

2.1  什么是医学图像处理

医学图处理就是利用计算机系统对生物医学图像进行的具有临床医学意义的处理和分析。

医学图处理是一个很复杂的过程。医学图像作为一种信息源,也和其它有关病人的信息一样,是医生做出判断时的依据。医生在判读医学图像时,要把图像与他的解剖学、生理学和病理学等知识作对照,还要根据经验来捕捉图像中的有重要意义的细节和特征。所以要从一幅或几幅医学图像中判断出是否有异常,或属于什么疾病,是一种高级的脑力劳动。任意拿一张有异常的CT图像、X线照片或超声图像来看,如果不是训练有素的医生,是难以发现图上的异常的。所以对医学图像进行处理显得尤为重要。

2.2  医学图像处理及研究内容

2.2.1  超声图像

超声是超过正常人耳能听到的声波,频率在20 000赫兹(Hertz,Hz)以上。超声检查是利用超声的物理特性和人体器官组织声学性质上的差异,以波形、曲线或图像的形式显示和记录,借以进行疾病诊断的检查方法。40年代初就已探索利用超声检查人体,50年代已研究、使用超声使器官构成超声层面图像,70年代初又发展了实时超声技术,可观察心脏及胎儿活动。超声诊断由于设备不似CT或MRI设备那样昂贵,可获得器官的任意断面图像,还可观察运动器官的活动情况,成像快,诊断及时,无痛苦与危险,属于非损伤性检查,因此,在临床上应用已普及,是医学影像学中的重要组成部分。不足之处在于图像的对比分辨力和空间分辨力不如CT和MRI高。

超声在介质中以直线传播,有良好的指向性。这是可以用超声对人体器官进行探测的基础。当超声传经两种声阻抗不同相邻介质的界面时其声阻抗差大于0.1%,而界面又明显大于波长,即大界面时,则发生反射,一部分声能在界面后方的相邻介质中产生折射,超声继续传播,遇到另一个界面再产生反射,直至声能耗竭。反射回来的超声为回声。声阻抗差越大,则反射越强,如果界面比波长小,即小界面时,则发生散射。超声在介质中传播还发生衰减,即振幅与强度减小。衰减与介质的衰减系数成正比,与距离平方成反比,还与介质的吸收及散射有关。

人体结构对超声而言是一个复杂的介质,各种器官与组织,包括病理组织有它特定的声阻抗和衰减特性。因而构成声阻抗上的差别和衰减上的差异。超声射入体内,由表面到深部,将经过不同声阻抗和不同衰减特性的器官与组织,从而产生不同的反射与衰减。这种不同的反射与衰减是构成超声图像的基础。将接收到的回声,根据回声强弱,用明暗不同的光点依次显示在影屏上,则可显出人体的断面超声图像,称这为声像图。人体器官表面有被膜包绕,被膜同其下方组织的声阻抗差大,形成良好界面反射,声像图上出现完整而清晰的周边回声,从而显出器官的轮廓。根据周边回声能判断器官的形状与大小。

JAVA 图形图像处理系统设计与开发(论文+源码)_Nueve_第1张图片

图2.1 急性阑尾超声影像

2.2.2  X射线图像

X线图像是当前临床应用最广泛的一种医学图像,如何从X线图像获得更多的信息,是提高诊断技术水平的一个重要方向。

X线图像建立在当X线透过人体时,各种脏器与组织对X线的不同吸收程度的基础上,因而在接收端将得到不同的射线强度。接收端射线强度的变化,如被记录在底片上就变成灰度的变化。

基于这个原理,所得的X线图像是把三维结构的人体在二维空间中投影成像的技术,是人体内各层结构重叠后的图像。因此,处理的基本目的是要在图片上把特定的脏器轮廓从周围的结构中分离出来。几十年来,X线技术的发展可以说大都是为了提高X线图像的分辨能力。例如,各种X线照片的处理技术(包括增强,分割,识别等),X线断层摄影技术,X线CT技术,X线减影技术等。此外,也要尽可能减少病人和医生所受到的X线辐射剂量。

JAVA 图形图像处理系统设计与开发(论文+源码)_Nueve_第2张图片

2.2 骨纤维异常增殖症X光片

2.2.3  磁共振成像

核磁共振(MRI)又叫核磁共振成像技术。是继CT后医学影像学的又一重大进步。自80年代应用以来,它以极快的速度得到发展。其基本原理:是将人体置于特殊的磁场中,用无线电射频脉冲激发人体内氢原子核,引起氢原子核共振,并吸收能量。在停止射频脉冲后,氢原子核按特定频率发出射电信号,并将吸收的能量释放出来,被体外的接受器收录,经电子计算机处理获得图像,这就叫做核磁共振成像。

核磁共振是一种物理现象,作为一种分析手段广泛应用于物理、化学生物等领域,到1973年才将它用于医学临床检测。为了避免与核医学中放射成像混淆,把它称为核磁共振成像术(MR)。

MR是一种生物磁自旋成像技术,它是利用原子核自旋运动的特点,在外加磁场内,经射频脉冲激后产生信号,用探测器检测并输入计算机,经过处理转换在屏幕上显示图像。

MR提供的信息量不但大于医学影像学中的其他许多成像术,而且不同于已有的成像术,因此,它对疾病的诊断具有很大的潜在优越性。它可以直接作出横断面、矢状面、冠状面和各种斜面的体层图像,不会产生CT检测中的伪影;不需注射造影剂;无电离辐射,对机体没有不良影响。MR对检测脑内血肿、脑外血肿、脑肿瘤、颅内动脉瘤、动静脉血管畸形、脑缺血、椎管内肿瘤、脊髓空洞症和脊髓积水等颅脑常见疾病非常有效,同时对腰椎椎间盘后突、原发性肝癌等疾病的诊断也很有效。

JAVA 图形图像处理系统设计与开发(论文+源码)_Nueve_第3张图片

2.3 颅脑病变MR影像

MR也存在不足之处。它的空间分辨率不及CT,带有心脏起搏器的患者或有某些金属异物的部位不能作MR的检查,另外价格比较昂贵。

2.2.4  核医学成像

将放射性同位素(RI)作为示踪物质,直接注入人体,并在体外用测定器对它的分布、聚集、变化等进行测定记录,所得的图像即为核医学图像。  

核医学图像与其它用作诊断的医学图像相比,是有其特长的。首先,由于可以选择对特定脏器的生理作用有关联的放射性药物,因而可对不同的脏器做图像观察和分析研究,即有做选择性造影的能力;其次,由于放射性药物可以有不同的寿命,因而有可能对放射性物质在体内的活动进行长时间的观察,从而有可能测定体内各脏器的摄取、排泄、循环以及代谢等机能,即具有动态机能测定的能力,这些重大特长都是其它医学图像所不具有的。由于核医学图像具有的“选择性造影能力”和“动态机能测定能力”,所以虽然它有一系列的缺点,但在临床诊断中还是得到了广泛的应用。

核医学图像存在的弱点与检测方法有关。首先,由于被检查人员和操作人员所受辐射量的原因,做检查时用的放射性同位素剂量是不大的,而γ线的放射是同位素衰变的一种随机现象,所以核医学图像中含有较大的时间统计误差。为了使两个区域检测到的γ线数的变化不被统计涨落所淹没,同时又不增加同位素剂量,只好扩大每个区域的面积。这就导致核医学图像空间分辨率的降低。 

    正是由于核医学图像的空间分辨率低、信噪比低以及对比度低这些特点,使得在利用核医学图像做诊断时,医生的主观介入较多,往往造成解释上的差异。因此,引入图像处理技术和识别技术,对核医学图像来讲尤为重要。 

图2.4显示了一种叫做“正电子放射断层”(PET)的核成像。

JAVA 图形图像处理系统设计与开发(论文+源码)_Nueve_第4张图片

图2.4 PET图像

3  Java语言的特点

3.1  面向对象编程

Java的核心是面向对象编程。事实上,所有的Java程序都是面向对象的,你别无选择。这一点与C++不同,因为在那里你可以选择是否面向对象编程。面向对象编程与Java密不可分,因此,在你编写哪怕是最简单的Java程序以前,也必须理解它的基本原则。

3.1.1  抽象

面向对象编程的一个实质性的要素是抽象。人们通过抽象(abstraction)处理复杂性。例如,人们不会把一辆汽车想象成由几万个互相独立的部分所组成的一套装置,而是把汽车想成一个具有自己独特行为的对象。这种抽象使人们可以很容易地将一辆汽车开到杂货店,而不会因组成汽车各部分零件过于复杂而不知所措。他们可以忽略引擎、传动及刹车系统的工作细节,将汽车作为一个整体来加以利用。

使用层级分类是管理抽象的一个有效方法。它允许你根据物理意义将复杂的系统分解为更多更易处理的小块。从外表看,汽车是一个独立的对象。一旦到了内部,你会看到汽车由若干子系统组成:驾驶系统,制动系统,音响系统,安全带,供暖,便携电话,等等。再进一步细分,这些子系统由更多的专用元件组成。例如,音响系统由一台收音机、一个CD播放器、或许还有一台磁带放音机组成。从这里得到的重要启发是,你通过层级抽象对复杂的汽车(或任何另外复杂的系统)进行管理

复杂系统的分层抽象也能被用于计算机程序设计。传统的面向过程程序的数据经过抽象可用若干个组成对象表示,程序中的过程步骤可看成是在这些对象之间进行消息收集。这样,每一个对象都有它自己的独特行为特征。你可以把这些对象当作具体的实体,让它们对告诉它们做什么事的消息做出反应。这是面向对象编程的本质。 

面向对象的概念是Java的核心,对程序员来讲,重要的是要理解这些概念怎么转化为程序。你将会发现,在任何主要的软件工程项目中,软件都不可避免地要经历概念提出、成长、衰老这样一个生命周期,而面向对象的程序设计,可以使软件在生命周期的每一个阶段都处变不惊,有足够的应变能力。例如,一旦你定义好了对象和指向这些对象的简明的、可靠的接口,你就能很从容很自信地解除或更替旧系统的某些组成部分。

3.1.2  面向对象编程的3个原则

所有面向对象的编程语言都提供帮助你实现面向对象模型的机制,这些机制是封装,继承及多态性。当然,Java也不例外。

封装:封装(Encapsulation)是将代码及其处理的数据绑定在一起的一种编程机制,该机制保证了程序和数据都不受外部干扰且不被误用。理解封装性的一个方法就是把它想成一个黑匣子,它可以阻止在外部定义的代码随意访问内部代码和数据。对黑匣子内代码和数据的访问通过一个适当定义的接口严格控制。封装代码的好处是每个人都知道怎么访问它,但却不必考虑它的内部实现细节,也不必害怕使用不当会带来负面影响。

Java封装的基本单元是类。一个类(class)定义了将被一个对象集共享的结构和行为(数据和代码)。一个给定类的每个对象都包含这个类定义的行为和结构,好像它们是从同一个类的模子中铸造出来似的。因为这个原因,对象有时被看作是类的实例(instances of a class)。所以,类是一种逻辑结构,而对象是真正存在的物理实体。

当创建一个类时,你要指定组成那个类的代码和数据。从总体上讲,这些元素都被称为该类的成员(members)。具体地说,类定义的数据称为成员变量(member variables)或实例变量(instance variables)。操作数据的代码称为成员方法(member methods)或简称方法(methods)。如果你对C/C++熟悉,可以这样理解:Java程序员所称的方法,就是C/C++程序员所称的函数(function)。在完全用Java编写的程序中,方法定义如何使用成员变量。这意味着一个类的行为和接口是通过方法来定义的,类这些方法对它的实例数据进行操作。

既然类的目的是封装复杂性,在类的内部就应该有隐藏实现复杂性机制。类中的每个方法或变量都可以被标记为私有(private)或公共(public)。类的公共接口代表类的外部用户需要知道或可以知道的每件事情;私有方法和数据仅能被一个类的成员代码所访问,其他任何不是类的成员的代码都不能访问私有的方法或变量。既然类的私有成员仅能被程序中的其他部分通过该类的公共方法访问,那么你就能保证不希望发生的事情就一定不会发生。当然,公共接口应该小心仔细设计,不要过多暴露类的内部内容。

继承:继承(Inheritance)是一个对象获得另一个对象的属性的过程。继承很重要,因为它支持了按层分类的概念。大多数知识都可以按层级(即从上到下)分类管理。使用了继承,一个对象就只需定义使它在所属类中独一无二的属性即可,因为它可以从它的父类那儿继承所有的通用属性。所以,可以这样说,正是继承机制使一个对象成为一个更具通用类的一个特定实例成为可能。

继承性与封装性相互作用。如果一个给定的类封装了一些属性,那么它的任何子类将具有同样的属性,而且还添加了子类自己特有的属性。这是面向对象的程序在复杂性上呈线性而非几何性增长的一个关键概念。新的子类继承它的所有祖先的所有属性。它不与系统中其余的多数代码产生无法预料的相互作用。

多态性:多态性(polymorphism ,来自于希腊语,表示多种形态)是允许一个接口被多个同类动作使用的特性,具体使用哪个动作与应用场合有关,下面我们以一个后进先出型堆栈为例进行说明。假设你有一个程序,需要3种不同类型的堆栈。一个堆栈用于整数值,一个用于浮点数值,一个用于字符。尽管堆栈中存储的数据类型不同,但实现每个栈的算法是一样的。如果用一种非面向对象的语言,你就要创建3个不同的堆栈程序,每个程序一个名字。但是,如果使用Java,由于它具有多态性,你就可以创建一个通用的堆栈程序集,它们共享相同的名称。

多态性的概念经常被说成是一个接口,多种方法。这意味着可以为一组相关的动作设计一个通用的接口。多态性允许同一个接口被同一类的多个动作使用,这样就降低了程序的复杂性。选择应用于每一种情形的特定的动作(specific action)(即方法)是编译器的任务,程序员无需手工进行选择。你只需记住并且使用通用接口即可。

如果用得当,在由多态性、封装性和继承性共同组成的编程环境中可以写出比面向过程模型环境更健壮、扩展性更好的程序。精心设计的类层级结构是重用你花时间和努力改进并测试过的程序的基础,封装可以使你在不破坏依赖于类公共接口的代码基础上对程序进行升级迁移,多态性则有助于你编写清楚、易懂、易读、易修改的程序。

除了面向对象特性外,Java还具有其它的特点。

3.2  Java的特性

作为一种程序语言,Java拥有许多重要的特性:简单的、面向对象的、网络的、解释的、健壮的、安全的、可移植的、高性能的、多线程以及动态性

前面已对面向对象特性做了具体的说明,下面针对其它的特性加以说明。

1.简单性:Java语言通过提供最基本的方法来完成指定的任务 ,只需理解一些基本的概念 ,就可以用它编写出适合于各种情况的应用程序。 Java略去了运算符重载、多重继承等模糊的概念,并且通过实现自动垃圾收集大大简化了程序设计者的内存管理工作。另外,Java也适合于在小型机上运行,它的基本解释器及类的支持只有 40KB左右,加上标准类库和线程的支持也只有215KB左右。库和线程的支持也只有 215KB左右。

2.网络性:Java本身等于就是通过学习网络而产生的,它的许多功能与应用都是与网络相关,从最初的确良Applet、简化的Socket、交互式的JSP/Servlet网络程序到今日热门的Web Serivice等,都注定了Java在网络相关的领域占有一席之地。事实上,Java应用最多的领域也正是网络服务这一块。

3.解释执行:Java解释器直接对 Java字节码进行解释执行。字节码本身携带了许多编译时信息使得连接过程更加简单。

4.健壮性:Java将C/C++中一些功能强大但不容易掌握的功能去除了。以指针功能为例,即使是有经验的开发人员在使用指针功能时也得小心翼翼,避免编写出使程序崩溃的错误,诸如此类的功能在Java中被去除,为的是让Java在使用时更为简单,编写出来的程序更为健壮。

5.安全性:用于网络、分布环境下的 Java必须要防止病毒的入侵。 Java不支持指针, 一切对内存的访问都必须通过对象的实例变量来实现 ,这样就防止程序员使用“特洛伊”木马等欺骗手段访问对象的私有成员,同时也避免了指针操作中容易产生的错误。

6.可移植性:又可称为独立于平台性。是指无需修改程序便能够运行在不同的计算机环境中。Java程序被编译成一种名为字节码的文件,字节码可被任何带有Java解释器的操作系统、软件或设备运行。

7.高性能:一般情况下,可移植性,稳定性和安全性几乎总是以牺牲性能为代价的,解释型语言的执行效率一般也要低于直接执行源码的速度。但Java所采用的措施却很好的弥补了这些性能差距。Java字节码格式的设计充分考虑了性能的因素,其字节码的格式非常简单,这使得经由Java解释器解释执行后可产生高效的机器码。Java编译器生成的字节码和机器码的执行效率相差无几。据统计,Java字节码的执行效率非常的接近于由C和C++生成的机器码的执行效率。

8.多线程:多线程机制使应用程序能够并行执行 ,而且同步机制保证了对共享数据的正确操作。通过使用 多线程 ,程序设计者可以分别用不同的线程完成特定的行为 ,而不需要采用全局的事件循环机制 ,这样就很容易地实现网络上的实时交互行为。

9.动态性:Java的设计使它适合于一个不断发展的环境。在类库中可以自由地加入新的方法和实例变量而不会影响用户程序的执行。并且 Java通过接口来支持多重继承 ,使之比严格的类继承具有更灵活的方式和扩展性。

3.3  Java语言的前景

Java语言有着广泛的应用前景,大体上可以从以下几个方面来考虑其应用:

1.所有面向对象的应用开发,包括面向对象的事件描述、处理、综合等;

2.计算过程的可视化、可操作化的软件的开发;

3.动态画面的设计,包括图形图像的调用;

4.交互操作的设计(选择交互、定向交互、控制流程等); 

5. Internet的系统管理功能模块的设计,包括Web页面的动态设计、管理和交互操作设计等;

6.Intranet(企业内部网)上的软件开发(直接面向企业内部用户的软件);

7.与各类数据库连接查询的SQL语句实现;

8.进行手机通讯和其他的一些嵌入式的开发(比如手机和网络游戏);

9.其它应用类型的程序。

JAVA 图形图像处理系统设计与开发(论文+源码)_Nueve_第5张图片

图4.2 左图为原始图像,右图为经线性灰度变换后图像

JAVA 图形图像处理系统设计与开发(论文+源码)_Nueve_第6张图片

图5.2 图像处理界面

JAVA 图形图像处理系统设计与开发(论文+源码)_Nueve_第7张图片

图5.4 加载图像

JAVA 图形图像处理系统设计与开发(论文+源码)_Nueve_第8张图片

图5.6 点击反转灰度变换后的GUI

JAVA 图形图像处理系统设计与开发(论文+源码)_Nueve_第9张图片

图6.1 JCeator界面

如果您在计算机领域有任何疑虑或不确定的地方,请毫不犹豫地与老师交流噢,我们期待着为您提供有针对性的建议和指导。您的问题和讨论对我们来说都非常重要。

 

你可能感兴趣的:(JAVA,java,图像处理,计算机视觉,python,php,c++,c语言)