• 제목/요약/키워드: 클래스도

검색결과 2,336건 처리시간 0.023초

화상의 에지 보존을 고려한 적응 위너 필터에 의한 가법성 백샙잡음의 제거 (Removal of Additive White Noise Using an Adaptive Wiener Filter with Edge Retention)

  • 도재수
    • 한국정보처리학회논문지
    • /
    • 제6권6호
    • /
    • pp.1693-1702
    • /
    • 1999
  • 본 논문에서는 화상의 에지를 보존하면 가법성 백색잡음제거를 수행하는 적응 위너 필터를 제안한다. 학습용의 복수의 화상을 준비하여 각 화상을 블록으로 분할하여 블록내부의 에지의 성질에 의해 평탄, 수직, 수평, 대각선 방향(45도, 135도)의 5개의 클래스로 분류한다. 그리고, 클래스마다 공분산 행렬을 구하여 위너 필터를 설계한다. 잡음제거에 의한 블록의 클래스 분류는 각 클래스의 공분산 행렬의 고유 벡터를 이용하여 이루어진다. 각 클래스의 고유 벡터와 노이즈가 부가된 관측화상의 블록과의 내적을 구하여 얻어진 내적 값을 근거로 입력 블록을 적절한 클래스로 분류한다. 클래스 분류 후, 입력 블록의 클래스에 대응한 위너 필터로 교체하는 것으로 에지를 보존한 고정밀도의 화상 복원이 가능하였다. 또한 여러 가지 시뮬레이션을 행하여 제안 방법의 유용성도 확인하였다.

  • PDF

자바 클래스 파일로부터 객체 다이어그램 얻기 : 실제적인 방법 (Generating Object Diagrams from Java Class Files : A Practical Approach)

  • 양창모
    • 한국컴퓨터정보학회논문지
    • /
    • 제13권3호
    • /
    • pp.1-13
    • /
    • 2008
  • Gestwicki 등은 객체 그래프의 더 좋은 그림을 얻기 위하여 클래스 다이어그램으로부터 객체 다이어그램의 구조를 탐지하고 예측하는 기술을 제안하였다. 그들의 방법은 클래스 다이어그램으로부터 두 가지 예측 가능한 구조-되부름 덩어리 (recursive cluster)와 잎 덩어리 (leaf cluster)를 찾는다. 하지만 이 방법은 출발점이 클래스 다이어그램이므로 실제 프로그램에 적용하기에는 실제적이지 않다. 본 연구는 자바 클래스 파일에 적용하기 위하여 그들의 방법을 확장하고 구현한다. 자바 클래스 파일로부터 추출한 클래스들과 덩어리들의 구조와 관련성을 얻는다. 이 정보는 JIVE와 같은 자바 프로그램 실행 시각화 도구에게 제공되어 객체 다이어그램의 틀로 사용될 수 있다.

  • PDF

객체지향 프로그램에서 이벤트 추상화 표현 (Abstract Representation of Events on Object-Oriented Programs)

  • 임근;이경환
    • 한국정보처리학회논문지
    • /
    • 제4권5호
    • /
    • pp.1257-1266
    • /
    • 1997
  • 객체지향 언어가 가지고 있는 다양한 개념은 강력한 프로그램 구현을 지원할 수 있다. 그러나 이러한 개념에는 복잡한 이벤트의 관련성에 의해 프로그램의 분석과 이해에 어려움을 가지고 있다. 특히 객체지향 언어의 정적인 면보다는 동적인 측련의 이해를 어렵게 한다. 동적인 면은 클래스간 이벤트 작용을 인식하므로서 이해를 지원한다. 따라서 본 논문에서는 객체지향 프로그램의 이해를 지원할 수 있도록 이벤트 추상화 표현을 제시한다. 또한 클래스터링 개념을 이벤트 추상화에 적용하여, 객체지향 언어의 이해를 용이하게 지원할 수 있도록 이벤트 추상화 표현과 이벤트 추상화에 적용될 클러스터링 개념을 제시한다. 이벤트의 클래스터링에 의해서 사용 자는 클래스의 기능성 정보와 클래스 라이브러리 검색시 선택된 클래스와 이벤트 상호 작용 관계가 있는 다른 클래스를 파악함으로서 클래스 검색의 효율성을 지원한다.

  • PDF

객체지향 소프트웨어 재사용을 위한 클래스 라이브러리 설계에 관한 연구 (The Study of Class Library Design for Reusable Object-Oriented Software)

  • 이해원;김진석;김혜규;하수철
    • 한국정보처리학회논문지
    • /
    • 제6권9호
    • /
    • pp.2350-2364
    • /
    • 1999
  • 본 논문은 객체지향 C++ 클래스 컴포넌트를 분류하여 재사용자에게 필요한 컴포넌트를 제공하기 위한 저장소의 클래스 라이브러리 설계방법을 제안한 것이다. 클래스 라이브러리를 설계하기 위해서 컴포넌트 구성 모델을 정의하였고, Enumerative 분류 방법을 이용한 멀티미디어 영역을 분류하였으며, 문서 클러스터링 방법을 확장하여 유사도에 의한 C++ 클래스를 유사한 그룹으로 분류하는 클러스터 생성 기준을 제안하고 있다. 이 유사 그룹인 클러스터는 클래스 멤버 데이터와 멤버함수 그리고 클래스 유사도를 기반으로 분류되며, 분류된 컴포넌트들은 유사도 관계의 계층구조로 구성된다. 마지막으로 객체지향 개념인 Generalization/Specialization의 C++ 상속관계를 계층구조로 표현할 수 있는 클래스 라이브러리를 설계하였다.

  • PDF

클래스 특성 기계학습에 기반한 클래스 이름의 접미사 검증 기법 (Validation Technique for Class Name Postfixes Based on the Machine Learning of Class Properties)

  • 이홍석;이준하;이일로;박수진;박수용
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제4권6호
    • /
    • pp.247-252
    • /
    • 2015
  • 소프트웨어의 규모가 커지고 복잡성이 증가함에 따라 소프트웨어의 유지보수가 보다 중요해지고 있으며 유지보수성에 많은 영향을 미치는 요인 중 하나는 소스코드 가독성이다. 가독성의 90% 이상 영향을 끼치는 요인은 소스코드에서 사용되는 식별자들의 이름이며 이를 위한 기존 연구들에서는 클래스의 식별자로 사용된 어휘를 이용하여 식별자의 이름을 검증한다. 하지만 대부분의 관련 연구는 그 특성상 개체의 도메인 관련 특성만을 고려하게 되며 클래스 내의 어휘가 적절하지 못한 경우 적용할 수 있는 범위가 한정적이라는 한계점이 있다. 본 논문에서는 클래스의 특성을 추출하여 의사결정트리 기법을 통해 기계학습을 시킨 후 클래스 역할 모델을 생성하며 이를 이용하여 이름을 검증할 대상 클래스의 역할에 해당하는 접미사를 추천하게 되어 클래스 이름 검증 보고서를 생성한다. 본 연구 기법의 효용성을 검증하기 위해 4개의 오픈소스 프로젝트에 대하여 본 연구 기법을 적용하였고 클래스 역할 정보를 담고 있는 5개의 접미사에 대해 정확도와 재현율, ROC 곡선과 같은 지표를 제시하였다.

내장형 자바 시스템을 위한 클래스 라이브러리의 특성 (Characteristic of the Class Library for Embedded Java System)

  • 양희재
    • 한국정보통신학회논문지
    • /
    • 제7권4호
    • /
    • pp.788-797
    • /
    • 2003
  • 클래스 라이브러리는 자바가상기계와 더불어 자바실행환경을 이루는 가장 중요한 요소들 중 한가지다. 통신속도나 메모리의 용량 면에서 제한을 받게 되는 내장형 시스템의 특징상 내장형 자바 시스템은 클래스 라이브러리에 대한 의존도가 매우 높다. 따라서 효율적인 내장형 자바 시스템의 구축을 위해서는 클래스 라이브러리에 대한 면밀한 분석이 필수적이다. 본 논문에서는 내장형 자바 시스템을 위한 클래스 라이브러리의 특성에 대해 분석하였다. 즉 라이브러리를 이루는 클래스 구성과, 그 클래스들을 담은 파일의 크기 및 파일 내 주요 요소인 상수풀에 대한 분석을 하였다. 또한 클래스들이 갖고 있는 필드 및 메소드의 개수, 각 메소드들이 필요로 하는 스택과 지역변수배열의 크기, 그리고 각 메소드의 바이트코드 길이 등에 대해 조사하였다. 이 연구의 결과는 내장형 자바 시스템의 클래스 적재에 따른 지연시간 해석, 인스턴스를 만들 때 소요되는 메모리의 크기 예측 등 효율적 내장형 자바가상기계의 설계에 사용될 것이다.

객체지향 시스템의 클래스에 대한 응집도 (A Cohesion Metric for Classes in Object-Oriented Systems)

  • 채홍석;권용래;배두환
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제26권9호
    • /
    • pp.1095-1104
    • /
    • 1999
  • 객체지향 시스템의 개발은 클래스를 통해서 이루어진다. 즉, 문제 영역에 존재하는 중요한 대상 또는 개념을 클래스로 모델링하고, 이로부터 생성된 객체들 사이의 메시지 교환을 통해서 시스템은 구축된다. 또한, 클래스는 정보 은닉을 제공함으로써, 객체지향 시스템의 재사용성과 유지보수성에 상당한 기여를 한다. 그러나, 설계 단계에서 실세계의 대상을 부적절하게 모델링하거나, 또는 유지보수 단계에서 클래스에 무분별한 변경을 가하는 경우 클래스의 품질은 악화될 수 있고, 이는 결국 시스템을 유지보수 하거나 확장하는데 상당한 장애를 초래한다.응집도는 모듈의 구성 요소들 사이의 연관성 정도를 나타내는 척도로서 전통적으로 모듈의 품질을 평가하기 위한 기준으로 사용되어 왔다. 이 논문에서는 클래스의 품질을 평가하는 방법으로서의 클래스 응집도를 제안한다. 즉, 클래스가 실세계의 대상을 적절하게 모델링한다면, 그 구성요소들 사이에 밀접한 관련이 있고 결국 높은 응집도를 가지게 될 것이다. 반대로 실세계의 대상에 대한 적절한 모델이 아니라면, 그 클래스의 구성 요소들 사이에는 밀접한 관련성이 없을 것이고 따라서 낮은 응집도를 보일 것이다.Abstract Object-oriented systems are developed by means of classes; that is, classes captures the essential entities or concepts in the problem domain, and the system is embodied by the interactions of objects instantiated from the classes. In addition to the basic units of object-oriented systems, classes serves as the units of encapsulation, which considerably promote the modifiability and the extensibility of them. However, improper modeling in the design phase or uncontrolled changes during the maintenance phase can degrade the quality of classes, which leads to systems cumbersome to maintain and extend.Cohesion refers to the degree of connectivity among the elements of a single module, and is being used as a factor which characterizes the quality of a module. In this paper, we propose a new cohesion metric for assessing the quality of classes. If a class captures properly the essential features of objects, the members of the class surely have strong relationship among them. On the contrary, the poor relationship among class members can indicate that the class is not a proper model of objects.

래피드 프로토토입핑 기법을 사용한 객체 지향 클래스 계층 구조 설계 방법 (The Object-Oriented Class Hierarchy Structure Design Method using the Rapid Prototyping Techniques)

  • 허계범;최영근
    • 한국정보처리학회논문지
    • /
    • 제5권1호
    • /
    • pp.86-96
    • /
    • 1998
  • 객체 지향 설계 모델에서 클래스 계층구조는 소프트웨어 재사용성과 복잡한 시스템 설계시에 효율적이다. 본 논문에서는 래피드 프로토타입핑 기법을 사용한 객체 지향 클래스 계층 구조 설계 방법을 제시한다. 이 방법은 객체 모델링 단계에서 식별된 클래스들을 새로운 분류 방법을 사용하여 관계성 식별과 유사성을 측정한다. 여기에는 클래스의 속성과 메소드의 측정이 요구된다. 하나의 설계 모듈인 클래스 계층구조는 대화식으로 반복적인 작업을 통하여 생성되며, 각 모듈은 참조 관계, 상속 관계, 복합 관계로 구성된다. 이들 정보는 구형 및 프로그램 유지보수시에 도움을 주기 위하여 테이블에 저장하여 클래스 관계성을 그래프로 표현하고 노드클래스를 아이콘화 하였다. 따라서 새로운 클래스 추가 및 삭제 작업이 용이하여 클래스 계층 구조 재구성과 설계정보 재사용시에 효율적이다. 본 논문에서 제시하는 방법은 프로토타입 시스템으로 뿐만 아니라 실제 시스템에 최종 전환할 수 있기 때문에 시스템 분석, 설계, 구현의 능률을 높일 수 있다.

  • PDF

다차원 파일구조를 이용한 객체지향 데이터베이스의 중포속성 색인기법 (Indexing Techniques or Nested Attributes of OODB Using a Multidimensional Index Structure)

  • 이종학
    • 한국정보처리학회논문지
    • /
    • 제7권8호
    • /
    • pp.2298-2309
    • /
    • 2000
  • 본 논문에서는 객체지향 데이터베이스의 중포속성에 대한 색인기법으로 다차원 색인구조를 이용하는 다차원 중포속성 색인기법은 MD-NAI를 제안한다. 중포석성에 대한 기존의 색인기법들은 중포된 객체에 대한 기존의 색인기법들은 B+-tree와 같은 일차원 색인구조를 이용함으로써, 클래스 계층과 중포속성이 포함된 복합 형태의 질의들에 대한 처리를 잘 지원하지 못한다. MD-NAI에서는 객체지향 데이터베이스의 클래스 계층에 대한 색인기법인 이차원 클래스 계층 색인기법(2D-CHI)을 다차원으로 확장한다. 2D-CHI는 키 속성 도메인과 클래스 식별자 도메인으로 구성된 이차원 도메인 공간상에서 객체들의 클러스터링을 다루는 색인기법이다. 본 논문의 MD-NAI에서는 색인된 중포속성을 표현하는 경로상의 각 클래스 계층마다 하나의 클래스 식별자 도메인을 할당하여 구성된 다차원 도메인 공간상에서 색인 엔트리들의 클러스터링을 다룬다. 따라서, MD-NAI에서는 기존의 색인기법에서 지원하기 어려운 질의의 대상 범위 클래스 계층상의 임의의 클래스들로 제한되거나, 질의에 포함된 복합속성들의 도메인이 클래스 계층상의 임의의 클래스들로 제한되는 경우에도 잘 지원할 수 있다.

  • PDF

바이트코드 최적화기 (The Bytecode Optimizer)

  • 이야리;홍경표;오세만
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제30권1_2호
    • /
    • pp.73-80
    • /
    • 2003
  • 자바언어는 인터넷 및 분산 환경 시스템에서 효과적으로 응용 프로그램을 개발할 수 있도록 설계된 프로그래밍 언어로써 객제지향 패러다임 특성 및 다양한 개발 환경을 지원하고 있다. 그러나, 자바는 클래스 파일이 이동하여 JVM 환경에서 인터프리팅 되는 시스템이므로, 성능의 저하 없이 실행되기 위해서는 효율적인 최적화와 실행 시스템이 요구된다. 본 논문은 네트워크 상에서 동적으로 다운로드 되는 클래스 파일을 바이트코드 수준에서 최적화하였다. 최적화된 바이트코드들이 인터프리팅 되는 시스템에서 적은 네트워크 로드를 가지고 실행할 수 있도록 하며, 효율적인 실행 속도를 보이도록 하는 것이다. 본 논문에서 구현된 바이트코드 최적화기에서는 내부적으로 바이트코드 최적화기와 클래스 파일 생성기를 이용하여 실행시간을 개선하고 전체 클래스 파일의 크기를 줄이게 된다. 바이트코드 최적화기는 바이트코드를 클래스사이의 계층 분석과 제어 흐름의 분석을 통하여 클래스들간의 연관 관계를 분석한 후 그래프를 구성하고, 패턴 탐색 결과 기본 블록 분리를 통하여 전역 최적화를 이루고, 기본 블록 안에서의 연산강도 경감, 그리고 도달할 수 없는 코드 블록의 제거를 수행한다. 바이트코드 최적화 단계를 수행한 클래스 파일은 부분적으로 클래스 파일의 최적화를 가져와 전체 클래스 파일의 크기를 줄이고, 인터프리터를 통하여 실행될 때 수행 속도 면에서 좀더 빠른 실행속도를 가지게 된다.