본문 바로가기

Java7

[OpenCV] 04.. OpenCV 평활화와 이진화(feat.JAVA) JAVA와 OpenCV를 이용하여 이미지 평활화(Equalization)와 이진화(Binarization)를 해보겠습니다. 평활화(Equalization) public static void showEqualizedGrayLenna() { try { String locGrayLenna = "경로생략/LennaGray.png"; Mat imageGrayLenna = Imgcodecs.imread(locGrayLenna); Imgproc.cvtColor(imageGrayLenna, imageGrayLenna, Imgproc.COLOR_BGR2GRAY); Mat imageEqualizedGrayLenna = new Mat(); // Equalize Start Imgproc.equalizeHist(imageGra.. 2020. 10. 17.
[OpenCV] 01.. JAVA로 OpenCV 시작하기 OpenCV를 활용할 수 있는 많은 언어들이 있지만 제가 가장 많이 사용하는 JAVA(1.8)를 이용하여 Windows환경에서 OpenCV실습을 진행하겠습니다. OpenCV 설치 OpenCV공식 홈페이지와 GitHub에서 다운로드 가능합니다. 압축파일의 형태로 제공되며 필요하신 라이브러리 파일과 실행 파일들을 이용하시면 됩니다. Eclipse에 OpenCV 라이브러리 불러오기 1. JAVA Build Path 설정 2. 예제 소스 실행 import org.opencv.core.Core; import org.opencv.core.CvType; import org.opencv.core.Mat; public class Assignment_1 { public static void main(String[] arg.. 2020. 9. 20.
[JAVA] static과 final의 컴파일 자바에서 자주 쓰이는 정적(static) 변수와 상수(final) 변수가 컴파일 시에 어떻게 변하는지 기록합니다. 크게 신경 쓰지 않아도 괜찮지만 간혹 문제를 발생하는 경우가 있으니 알고 있으면 좋겠습니다. static 컴파일 전(Var.java) public class Var { public static String str = "정적"; } 컴파일 전(Use.java) public class Use { private String str = Var.str; } 컴파일 후(Var.class) public class Var { public static String str = "정적"; } 컴파일 후(Use.class) public class Use { private String str = Var.str; }.. 2020. 8. 11.
[JAVA] 내부 클래스가 컴파일되면? 지난 포스트에서 작성했던 소스에 내부 클래스로 구현하였던 인증 세션 부분이 컴파일했을 때 어떤 식으로 변경되는지에 대하여 기록하려 합니다. 자동 배포 환경이 구축되어있지 않은 상황에서 바이트 코드가 누락되어 동작오류가 발생하였습니다. JAVA Compile 우선 JAVA의 컴파일에 관하여 간략히 기록하겠습니다. JAVA의 모토인 Write once, run everywhere(한번 작성, 어디서나 실행)에 따라 자바 소스는 JVM위에서 동작 가능한 상태인 Byte Code로 컴파일됩니다. 이때 Class 내부에 작성한 내부 클래스는 어떤 식으로 컴파일될까요? Inner Class의 Byte Code 결과는 따로 컴파일된다 였습니다. 예제와 디컴파일한 Byte Code를 살펴보겠습니다. // OuterCl.. 2020. 7. 8.
[JAVA] SMTP 발송(feat.Naver) Java언어와 SMTP를 이용하여 메일을 발송하는 예제입니다. 네이버 메일 설정 1. 내 메일함 설정으로 들어갑니다. 2. POP3/IMAP 설정으로 들어갑니다. 3. IMAP/SMTP 설정으로 들어갑니다. 4. IMAP/SMTP 사용을 사용함으로 변경합니다. 5. 변경한 설정을 적용합니다. 6. SMTP 요청을 전송할 정보임으로 확인해주세요 pom.xml org.simplejavamail simple-java-mail 6.0.4 저장소에서 원하시는 버전의 의존성 패키지를 선택해서 프로젝트에 불러와주세요. 소스 public class MailUtil { /** 메일 HOST **/ private static final String HOST = "smtp.naver.com"; /** 메일 PORT **/ .. 2020. 6. 30.
[JAVA] FindBugs 오류처리 Eclipse 플러그인인 FindBugs를 이용하여 간단하게 JAVA Secure Coding검사를 진행하였습니다. 그 중 발견했더 오류 몇가지를 기록하려합니다. 버전상의 문제로 FindBugs를 사용하였지만 최신버전 JAVA와 프로젝트에서는 SpotBugs를 사용하시면 더 좋을것같아요. Call to equals() comparing different types 간단하지만 생각보다 많이 검출되는 오류입니다. //수정전 if(("").equals(value) || value == null ){ //수정후 if(value == null ){ String타입이 아닌 변수를 .equals 메서드를 통하여 비교했기에 발생했던 오류였습니다. 변수의 상태가 제네릭 한 상태일때 주의하면 좋겠습니다. Invocatio.. 2020. 3. 30.