Computer >> 컴퓨터 >  >> 프로그래밍 >> Java

Java

  1. Java 9에서 기존 모듈을 수정하는 방법 완벽 가이드

    Java 9 모듈 시스템이란?Java 9에서 도입된 모듈(module)은 코드와 데이터를 하나로 묶은 이름이 지정된 자기 기술적(self-describing) 컬렉션입니다. 코드는 Java 클래스와 인터페이스 같은 타입들을 포함하는 패키지 집합으로 구성되며, 데이터에는 리소스 및 기타 정적 정보가 포함됩니다.모듈을 사용하려면 소스 코드의 루트 위치에 module-info.java 파일을 생성하고 모듈을 선언해야 합니다.module-info.java 기본 템플릿module <module-name> {  &

  2. Java 9에서 JShell 기본 편집기를 변경하는 방법

    JShell의 REPL과 기본 편집기JShell은 REPL(Read-Evaluate-Print Loop)을 구현한 도구로, 명령줄(command-line)에서 코드를 읽어 들여 입력된 스니펫(snippet)을 평가하고 그 결과를 즉시 화면에 출력해 줍니다.JShell에서는 기본 제공되는 JShell Editor Pad를 사용해 코드를 편집할 수 있습니다. 또한 /set 명령을 활용하면 기본 편집기를 다른 프로그램으로 변경할 수도 있습니다. 이렇게 설정해 둔 편집기는 /edit 명령을 실행할 때 사용됩니다. 편집기를 지정하는 방법은

  3. OpenCV Java로 이미지 속 객체 주변에 타원 피팅하는 방법

    OpenCV에서는 org.opencv.imgproc.Imgproc 클래스가 제공하는 fitEllipse() 메서드를 사용해 도형 위에 타원을 피팅(fit)할 수 있습니다. 이 메서드는 MatOfPoint2f 객체를 인자로 받아, 주어진 점들의 집합에 가장 잘 맞는 타원을 계산한 뒤 그 결과를 RotatedRect 객체로 반환합니다. 이 기능을 활용하면 이미지 속에서 감지된 객체들 주변에 타원을 그릴 수 있습니다. 전체 작업 흐름은 다음과 같습니다. Imgcodecs 클래스의 imread() 메서드로 이미지를 불러옵니다. Imgp

  4. Java OpenCV로 이미지에 텍스트 추가하기 – putText() 메서드 완벽 가이드

    OpenCV에서는 org.opencv.imgproc.Imgproc 클래스가 제공하는 putText() 메서드를 사용하여 이미지 위에 텍스트를 손쉽게 그릴 수 있습니다. 이 메서드는 지정한 문자열을 이미지의 원하는 위치에 렌더링하며, 다음과 같은 매개변수들을 받습니다.원본 이미지를 담고 있는 Mat 객체이미지에 표시할 텍스트를 지정하는 String 객체텍스트가 그려질 좌표(위치)를 나타내는 Point 객체텍스트에 적용할 글꼴을 지정하는 정수 상수 (예: FONT_HERSHEY_SIMPLEX)글꼴 기본 크기에 곱해지는 배율(scale)

  5. OpenCV Java로 구현하는 캐니(Canny) 에지 검출 완벽 가이드

    캐니 에지 검출기란? 캐니 에지 검출기(Canny Edge Detector)는 최적 검출기(optimal detector)로 널리 알려진 알고리즘입니다. 실제로 존재하는 에지만을 정확하게 검출하고, 하나의 에지에 대해 단 한 번의 응답만을 반환하며, 에지 픽셀과 검출된 픽셀 사이의 거리를 최소화하기 때문입니다. Canny() 메서드 개요 OpenCV의 Imgproc 클래스가 제공하는 Canny() 메서드는 주어진 이미지에 캐니 에지 검출 알고리즘을 적용합니다. 이 메서드는 다음 인자들을 받습니다. 원본 이미지와 결과 이미지를 나

  6. Java와 OpenCV로 배우는 형태학적 닫기(Morphological Closing) 구현 방법

    형태학적 연산(Morphological Operation)은 주어진 형태, 즉 구조 요소에 따라 이미지를 처리하는 연산들의 집합입니다. 침식(Erosion)과 팽창(Dilation)은 그중 가장 기본이 되는 두 가지 형태학적 연산입니다.팽창(Dilation): 이미지 경계에 새로운 픽셀을 추가합니다.침식(Erosion): 이미지 경계의 픽셀을 제거합니다.추가되거나 제거되는 픽셀의 총 개수는 사용된 구조 요소(structuring element)의 크기에 따라 결정됩니다. 침식과 팽창은 각각 erode()와 dilate() 메서드를

  7. 이미지 처리에서 형태학적 그래디언트(Morphological Gradient)란 무엇일까?

    침식(Erosion)과 팽창(Dilation)은 형태학적 연산의 두 가지 기본 동작입니다. 이름에서 알 수 있듯이, 형태학적(morphological) 연산이란 이미지를 픽셀 값 자체가 아닌 형태(shape)를 기준으로 처리하는 연산들의 집합을 의미합니다.침식과 팽창의 기본 원리팽창 연산에서는 이미지 경계에 추가 픽셀이 더해져 밝은 영역이 확장되고, 반대로 침식 연산에서는 이미지 경계의 픽셀이 제거되어 밝은 영역이 축소됩니다. 이때 팽창 과정에서 추가되는 픽셀의 총 개수는 사용되는 구조 요소(Structuring Element),

  8. Java OpenCV에서 이미지 표시하기: HighGui imshow() 메서드 활용법

    OpenCV의 org.opencv.highgui 패키지에 포함된 HighGui 클래스는 윈도우(창)를 생성·조작하고 화면에 표시하는 기능을 제공합니다. Java에서는 C++의 cv::imshow()에 해당하는 기능을 이 클래스의 imshow() 메서드로 구현할 수 있으며, 이 메서드는 다음 두 가지 매개변수를 받습니다. 윈도우의 이름을 나타내는 문자열 변수 이미지 데이터를 담고 있는 Mat 객체 imshow()를 호출한 후에는 반드시 waitKey() 메서드를 함께 호출하는 것이 좋습니다. waitKey()는 키보드 입력을 기

  9. Java로 구현하는 탑햇(Top Hat)·블랙햇(Black Hat) 형태학적 연산 완벽 가이드

    형태학적 연산(Morphological Operations)이란?형태학적 연산은 주어진 구조 요소(structuring element)의 형태를 기준으로 이미지를 처리하는 연산들의 집합입니다. 대표적인 형태학적 연산은 다음과 같습니다.침식(Erosion) – 이미지 경계에서 픽셀을 제거하는 형태학적 연산입니다.팽창(Dilation) – 이미지 경계에 픽셀을 추가하는 형태학적 연산입니다.추가되거나 제거되는 픽셀의 개수는 사용된 구조 요소의 크기에 따라 결정됩니다.모폴로지 열림(Opening) – 입력 이미지에 먼저 침식을 적용한 뒤,

  10. Java로 구현하는 OpenCV 허프 라인 변환(Hough Line Transform) 완벽 가이드

    허프 라인 변환이란? 이미지 속 직선을 검출하고 싶다면 허프 라인 변환(Hough Line Transform)을 활용할 수 있습니다. OpenCV에서는 두 가지 종류의 허프 라인 변환을 제공합니다. 바로 표준 허프 라인 변환(Standard Hough Line Transform)과 확률적 허프 라인 변환(Probabilistic Hough Line Transform)입니다. 1. 표준 허프 라인 변환 — HoughLines() 표준 허프 라인 변환은 Imgproc 클래스의 HoughLines() 메서드를 통해 적용할 수 있습니다.

  11. Java에서 OpenCV 확률적 허프 라인 변환(HoughLinesP) 구현하기

    허프 라인 변환(Hough Line Transform)은 이미지 속 직선을 검출하는 대표적인 기법입니다. OpenCV에서는 두 가지 종류의 허프 라인 변환을 제공하는데, 바로 표준 허프 라인 변환(Standard Hough Line Transform)과 확률적 허프 라인 변환(Probabilistic Hough Line Transform)입니다.확률적 허프 라인 변환이란?확률적 허프 라인 변환은 표준 허프 변환의 최적화 버전으로, 전체 픽셀이 아닌 무작위로 선택된 일부 픽셀만 사용해 연산량을 크게 줄이면서도 선분의 시작점과 끝점 좌

  12. OpenCV 허프 원 변환(Hough Circle Transform)의 Java 구현 방법

    이미지 속에 포함된 원을 검출하려면 허프 원 변환(Hough Circle Transform)을 활용할 수 있습니다. OpenCV에서는 HoughCircles() 메서드를 호출하여 이 변환을 간단하게 적용할 수 있으며, 이 메서드는 다음과 같은 매개변수를 받습니다.입력 이미지를 나타내는 Mat 객체검출된 원들의 벡터 정보를 저장할 출력용 Mat 객체검출 방식(detection method)을 지정하는 정수형 변수누산기(accumulator) 해상도와 이미지 해상도의 역비율(inverse ratio), 그리고 검출된 원들의 중심 사이

  13. Java와 OpenCV로 구현하는 이미지 히스토그램 균등화(Histogram Equalization)

    이미지의 히스토그램(histogram)은 픽셀 강도(intensity) 값의 빈도 분포를 시각적으로 보여주는 그래프입니다. 이미지 히스토그램에서 X축은 회색조(그레이 레벨) 강도 값을 나타내고, Y축은 해당 강도 값이 나타나는 빈도를 나타냅니다. 히스토그램을 분석하고 조정하면 이미지의 명암 대비(contrast)를 효과적으로 개선할 수 있습니다. 히스토그램 균등화(Equalization)는 픽셀 강도 값의 분포를 전체 범위에 걸쳐 고르게 재분배하는 기법으로, 어둡거나 밝은 부분에 치우친 이미지의 대비를 크게 향상시킵니다. Open

  14. 자바(Java) 예제로 배우는 OpenCV 라플라시안(Laplacian) 변환 완벽 가이드

    이미지에 적용되는 라플라시안(Laplacian) 변환은 화면 내에서 픽셀의 밝기(강도)가 급격하게 변화하는 영역을 강조하는 기법입니다. 이러한 특성 때문에 이미지의 윤곽선을 찾아내는 에지 검출(Edge Detection)에 널리 활용됩니다.OpenCV에서는 Imgproc 클래스가 제공하는 Laplacian() 메서드를 사용하여 손쉽게 라플라시안 변환을 수행할 수 있습니다. 이 메서드는 다음과 같은 매개변수를 받습니다.src, dst — 원본 이미지와 결과 이미지를 담을 두 개의 Mat 객체ddepth, ksize, scale, de

  15. Java 예제로 쉽게 이해하는 OpenCV 거리 변환(Distance Transform)

    거리 변환(Distance Transform)이란?거리 변환은 디지털 이미지의 파생 표현(derived representation) 기법 중 하나입니다. 이 연산에서는 전경(foreground) 영역 내부 픽셀들의 그레이 레벨 강도가, 해당 픽셀에서 가장 가까운 0 값(경계)까지의 거리 값으로 변경됩니다. 즉, 전경 영역 안의 각 픽셀이 경계로부터 얼마나 떨어져 있는지를 밝기 값으로 시각화할 수 있습니다.OpenCV에서는 Imgproc 클래스의 distanceTransform() 메서드를 사용하여 주어진 이미지에 거리 변환을 적용합

  16. Java OpenCV로 배우는 Sobel 에지 감지: 예제 코드와 실행 결과

    에지 감지(Edge Detection)에 사용되는 소벨(Sobel) 연산자는 주어진 이미지에서 수평 방향과 수직 방향의 에지를 모두 찾아낼 수 있도록 해주는 대표적인 이미지 처리 기법입니다. 소벨 연산자는 이미지에 가우시안 스무딩과 미분을 동시에 적용하는 방식으로 동작하여, 노이즈의 영향을 줄이면서도 경계선을 효과적으로 검출합니다. Sobel() 메서드의 매개변수 OpenCV에서 Imgproc 클래스가 제공하는 Sobel() 메서드는 주어진 이미지에 소벨 에지 감지 알고리즘을 적용합니다. 이 메서드는 다음과 같은 매개변수를 받습니다

  17. OpenCV를 활용한 Java Scharr 에지 검출 예제 완벽 가이드

    에지 검출(edge detection)을 위한 Scharr 연산자는 주어진 이미지에서 수평 방향과 수직 방향의 에지를 모두 찾아낼 수 있는 강력한 필터입니다. Scharr 연산자는 Sobel 연산자의 개선된 형태로, 특히 작은 커널 크기에서 회전 대칭성과 정확도가 더 뛰어난 것으로 알려져 있습니다. Scharr() 메서드의 매개변수 OpenCV의 Imgproc 클래스가 제공하는 Scharr() 메서드는 입력 이미지에 Scharr 에지 검출 알고리즘을 적용합니다. 이 메서드는 다음과 같은 매개변수를 받습니다. 원본 이미지와 결과

  18. Java 예제로 배우는 OpenCV 단순 임계처리(Simple Thresholding) 완벽 가이드

    단순 임계처리란 무엇인가? 임계처리(Thresholding)는 이미지를 분할(segmentation)하는 가장 간단한 기법 중 하나로, 주로 이진 이미지(binary image)를 생성하는 데 활용됩니다. 단순 임계처리(simple thresholding)에서는 지정된 임계값(threshold value)보다 큰 픽셀들이 미리 정해진 표준 값으로 대체되어, 결과적으로 흑과 백으로만 구성된 선명한 이미지를 얻을 수 있습니다. 이러한 방식은 문서 스캔, 객체 윤곽 추출, 배경과 전경의 분리 등 다양한 컴퓨터 비전 작업에서 널리 사용됩니

  19. Java 예제로 배우는 OpenCV 적응형 임계값(Adaptive Threshold) 완벽 가이드

    적응형 임계값(Adaptive Thresholding)이란?임계값 처리(Thresholding)는 이미지를 분할(segmentation)하는 간단하면서도 강력한 기법으로, 주로 이진(binary) 이미지를 생성하는 데 사용됩니다. 기본적인 임계값 처리에서는 지정된 임계값보다 큰 픽셀들이 표준 값으로 대체됩니다.반면 적응형 임계값(Adaptive Thresholding)은 이미지 전체에 하나의 임계값을 적용하는 것이 아니라, 작은 영역별로 임계값을 계산하는 방식입니다. 따라서 조명 조건이 균일하지 않은 이미지에서도 영역마다 서로 다른

  20. 자바 OpenCV copyMakeBorder()로 이미지에 테두리 추가하는 방법

    이미지에 테두리(Border) 추가하기이미지 처리에서 테두리는 이미지 가장자리를 강조하거나, 필터 및 컨볼루션 연산 시 발생할 수 있는 경계 픽셀 문제를 보완하기 위해 자주 활용됩니다. 자바(Java) OpenCV에서는 Core.copyMakeBorder() 메서드 하나만으로 원본 이미지의 상하좌우에 다양한 형태의 테두리를 손쉽게 추가할 수 있습니다.copyMakeBorder() 메서드의 매개변수src – 테두리를 추가할 원본(소스) 이미지를 나타내는 Mat 객체dst – 결과(출력) 이미지를 저장할 Mat 객체top, bottom

Total 1926 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:63/97  20-컴퓨터/Page Goto:1 57 58 59 60 61 62 63 64 65 66 67 68 69