본문 바로가기

전체 글

(122)
Getter와 Setter 메소드 ----이것이 자바다라는 책을 정리한 내용임 객체의 무결성 : 객체 외부에서 객체의 변수값(필드 데이터)에 접근하는 것을 막는 것 ->객체 지향 프로그래밍에서는 메소드를 통해 변수의 값을 변경한다. setter: 변수 값 변경을 위해 넘어오는 매개변수 값을 검증해서 유효한 값만을 데이터로 저장할 수 있도록 한다. public void setSpeed(int speed) { if(speed예외 boolean의 getter is+변수명{ return 변수 } setter set+변수명(매개값){ this.변수 = 매개값 } getter / setter로 접근제한 ex) 읽기 전용 필드이다. 1) getter 메소드만 선언 2) setter 메소드를 private 접근제한자를 갖도록 설정 이번 학습으로 새롭게..
Java 영상처리 전체 코드 github:https://github.com/fiammasue/JavaImageProcessing 유튜브 시연 영상(화소점처리):https://youtu.be/R62UMIZ96kA 유튜브 시연 영상(기하학처리):https://youtu.be/ea3TL9ltAxY 유튜브 시연 영상(화소영역처리):https://youtu.be/6M9dt1UiV0Y 유튜브 시연 영상(히스토그램처리):https://youtu.be/7abH5qxEMlw import java.awt.*; import java.awt.event.*; import javax.imageio.ImageIO; import javax.swing.*; import java.io.*; import java.awt.image.*; public class Jav..
Java에서 FileDialog를 이용한 파일 입출력 함수 유튜브시연영상:https://youtu.be/xbaaB-DpQWs //전역변수부 int[][][] inImage; int inH,inW; int[][][] outImage; static int outH,outW; File inFp,outFp; float[] rgb = new float[3]; float[] hsv = new float[3]; float[] abc = new float[3]; float[] def = new float[3]; //Parameter Variable String algo, para1, para2; String inFname, outFname; BufferedImage bImage; public void inputImage() {//선택한 이미지를 입력배열에 입력 받아 출력하는 ..
JFrame을 이용한 실행 기본틀 작성 import java.awt.*; import java.awt.event.*; import javax.imageio.ImageIO; import javax.swing.*; import java.io.*; import java.awt.image.*; public class JavaColorImageProject extends JFrame implements ActionListener{ //화소점처리에 대한 목록리스트(문자열 배열) private String[] algo1 = {"화소점처리","동일영상","반전영상","영상더하기/빼기", "영상곱하기","영상나누기", "흑백 127기준","흑백평균기준","파라볼라컵","파라볼라캡","감마","그레이스케일"}; //기하학처리에 대한 목록리스트(문자열 배열) p..
RGB-->HSV, HSV-->RGB //RGB-->HSV public float[] rgb2hsv(float r, float g, float b) { float max1 = Math.max(r,g); float max2 = Math.max(g,b); float max = Math.max(max1,max2); float min1 = Math.min(r,g); float min2 = Math.min(g,b); float min = Math.min(min1, min2); float d = max - min; //Delta RGB value float h=0, s; float v = max / 255; if (max==0) s = 0; else s = d/max; if(max==min){ h = 0; } else if(max==r){ h = (g..
히스토그램처리 스트레칭 public void strechImage(){ //스트레칭 outH = inH; outW = inW; outImage = new int[3][outH][outW]; //** Image Processing Algorithm ** int LOW = inImage[0][0][0],HIGH=inImage[0][0][0]; for(int rgb=0;rgb
화소영역처리 화소영역처리 엠보싱 public void embossingImage(){ //엠보싱 outH = inH; outW = inW; outImage = new int[3][outH][outW]; double [][]mask = { {-1.0,0.0,0.0}, {0.0,0.0,0.0}, {0.0,0.0,1.0} }; double [][][]tmpInImage = new double[3][outH+2][outW+2]; int [][][] tmpOutImage = new int[3][outH][outW]; for(int rgb=0;rgb
기하학처리 상하미러링 -서버오류인지 상하미러링과 좌우미러링이 반대로 된다... public void lrImage(){ //영상 좌우 반전 outH = inH; outW = inW; outImage = new int[3][outH][outW]; //** Image Processing Algorithm ** for(int i=0;i