전체 글 65

[지능시스템] 07장. 비전 에이전트

컴퓨터 비전 방법론규칙 기방 방법론 : 인간의 논리 체계를 바탕으로 데이터를 이해하는 방법 (6장 내용)기계 학습 방법론 : 획득한 데이터를 바탕으로 문제를 해결하는 방법신경망 모델 - 얕은 신경망, 깊은 신경망(딥러닝)*얕은 신경망 : 퍼셉트론 ~ 다층 퍼셉트론 ~ 깊은 다층 퍼셉트론 * 딥러닝 : 깊은 신경망 구조를 설계하고 학습하고 예측에 사용하는 기술 비신경망 모델모델 : 기계학습에서 부르는 함수학습 : 수집한 데이터로 방정식을 풀어 함수를 알아내는 일예측 : 학습된 모델로 결과를 계산하는 일 기계학습의 4단계 : 데이터 수집 → 모델 선택 → 학습 → 예측데이터 수집모델의 입력 : 특징 벡터   / 모델의 출력 : 참값, 레이블 회귀 문제 : 레이블이 연속적인 값분류 문제 : 레이블이 이산적인..

[JAVA] OCP (Open Closed Principle) 개방 폐쇄의 원칙

📌 개방 폐쇄의 원칙 (OCP) ? : 객체 지향 설계 원칙 중 하나로 Open for extention + Closed for modification 즉, 새로운 기능의 추가나 변경 사항이 생겼을 때 기존 코드는 확장할 수 있어야 하지만 기존의 코드는 수정되지 않아야 하는 원칙이다. 확장에는 열려있고 변경에는 닫혀있어야 한다는 의미이다. Open for extention : 확장은 열려있다는 뜻으로, 클라이언트 코드 수정을 제외한 기능 추가 가능을 의미.Closed for modification : 코드 수정은 닫혀있다는 의미로, 클라이언트 코드 수정 금지를 의미.  장점코드의 유지보수성을 높이고 변경으로 인한 오류를 줄일 수 있다.다형성을 활용하고 역할과 구현을 잘 분리하였기에 핵심 코드들을 유지할..

Language/JAVA 2024.08.26

[지능시스템] 06장. 비전 에이전트

지능 에이전트 : 센서를 통해 환경을 지각하고 액추에이터를 통해 환경에 행동을 가한다고 볼 수 있는 모든 것  : 비전 프로그램을 비전 에이전트로 확장하려면 적절한 그래픽 사용자 인터페이스(GIU)를 추가해야 함.이 책의 파이썬 GIU프로그래밍은 PyQt 라이브러리로 구현[프로그램6-1] (비전 프로그래밍 예시1)~class BeepSound(QmainWindow) # BeepSound 클래스 선언. #QmainWindow 클래스를 상속받겠다는 뜻    def __init__(self)#BeepSound 클래스로 객체를 생성하면 자동으로 실행되는 생성자 함수 정의~         shortBeepButten.clicked.connect(self.shortBeepFunction) #콜백 함수 지정    #..

[지능 시스템] 05장. 지역 특징

다중 스케일 영상을 구성하는 방법 가우시안 스무딩 방법 : 거리가 멀어지면 세부 내용이 점점 흐려지는 현상 모방. 표준편차를 조절하여 스케일을 연속값으로 세밀하게 조절할 수 있는 장점연속 공간에서 유도한 수식/알고리즘을 디지털(스케일) 공간으로 변환해 사용할 수 있음.스케일 공간의 미분은 정규 라플라시안 사용피라미드 방법 : 거리가 멀어짐에 따라 물체의 크기가 작아지는 현상을 모방.대강 구하고 싶을 때 이용 SIFT 특징점을 검출하는 과정 스케일 영상 구축 : 한 옥타브 내에서는 가우시안 스무딩 이용하여 세밀하게 조정, 옥타브를 건너뛸 때는 피라미드 방법 이용하여 영상을 반으로 줄임. 사진 여섯 장 - 0옥타브***~ . 0옥타브를 구축하려면 컨볼루션을 6번 수행해야 함. 옥타브는 표준편차=1.6으로 스..

[OS / Linux] 아이노드 (i-node) / 하드 링크, 심볼릭 링크

아이노드 (i-node)  i-node는 Index node의 줄임말로, 유닉스 기반 시스템 내에서 파일을 빠르게 찾기 위해 사용되는 데이터 구조이다. 위 그림에서 disk block는 각 정보를 의미하는데, i-node의 정보 구성으로는 파일 형식, 파일 권한, 링크 수, 파일 소유주, 파일 그룹, 파일 크기, 파일 생성 시간이 있다. 이 정보들을 이용하여 i-node는 파일 및 디렉토리의 관리와 접근을 가능하게 한다. 리눅스에서 다루는 모든 파일은 고유한 i-node를 가지고 있으며 ls -i 명령어를 통해 확인할 수 있다. > i-node 테이블 i-node 테이블은 파일이나 디렉터리에 대한 정보를 저장한 곳으로, 전체 파일들의 모든 i-node를 가지고 있다. 따라서 시스템에 저장될 수 있는 파일..

[OS / Linux] 리눅스 기본 명령어

ls기능 : 파일 및 디렉터리의 목록을 출력한다.형식 : ls [옵션] [ {디렉터리 | 파일} ]옵션  -l, -a, -t, -Rcd : 디렉토리를 이동하는 명령어cp : 파일을 또 하나의 파일이나 다른 디렉터리로 복사하는 명령어mv기능 : 파일 및 디렉터리의 이름 변경, 위치 이동형식 : mv [옵션] 옵션 : -f, -irmmkdir / rmdir기능 : 디렉토리 생성 / 디렉터리 삭제형식 : mkdir 디렉토리명 / rmdir 디렉토리명cat : 파일의 내용을 출력하여 보여준다.moreln : 파일을 실제 경로가 아니라 사용하기 편리한 다른 경로로 접근할 수 있도록 지정rpmtargzip / gunzip 기능 : 파일 압축 설정 / 파일 압축 해제형식 : gzip [옵션] 파일명 / gunzip..

[JAVA] 메모리 영역

📌JVM (Java Virtual Machine)이란?   :  자바 가상 머신으로, JVM 설치만 한다면 OS에 상관없이 자바의 바이트 코드를 해석하고 실행하는 역할을 한다. JVM 실행 순서 .java 파일을 컴파일러(Compiler)를 통해 .class 파일로 변환한다. .class 파일을 JVM의 ClassLoader(클래스로더)에게 보낸다.클래스로더에서 JVM 런타임 영역으로 로딩하여 메모리에 올린다. 메모리란?: 주기억장치인 하드웨어 RAM을 의미하며, 프로그램을 실행하기 위한 정보를 저장한다.컴퓨터에 존재하는 모든 영역은 RAM이란 기억장치 내 고유한 영역을 할당받는다.→ 효율적으로 프로그램이 실행되기 위해 메모리 영역은 구분된다. 자바의 메모리 영역- 자바 프로그램을 실행하게 되면 JVM..

Language/JAVA 2024.08.25

[OS / Linux] 리눅스 top 명령어 이해하기

📌top : 리눅스 시스템에서 실행 중인 프로세스의 현재 상태를 보여주는 명령어  리눅스 명령어top 명령어 실행 결과 PID : 프로세스의 고유 식별자USER : 프로세스를 실행한 사용자PR : 프로세스의 우선순위NI (nice value) : 프로세스의 nice 값. 우선순위에 영향 줌VIRT (virtual Memory) : 프로레스가 사용 중인 가상 메모리의 크기RES (resident memory) : 프로세스가 사용 중인 가상 메모리의 크기SHR (shared memory) : 공유 메모리의 크기S (us) : 프로세스의 상태. 대표적으로 Sleep, Running, Zombie 등이 있음%CPU (cpu usage) : cpu의 사용량을 백분율로 표시한 값%MEN (memory usage)..

[JAVA] 스레드(Thread) 의미와 사용법

Process와 Thread📌 프로세스(Process) : cpu에 의해 메모리에서 실행 중인 프로그램자바 JVM(Java Virtual Machine)은 주로 하나의 프로세스로 실행되며, 동시에 여러 작업을 수행하기 위해 멀티 스레드를 지원한다. 📌 스레드(Thread) : 메모리에 올라가 실행 중인 프로세스 안에서 실질적으로 작업을 실행하는 단위단일 스레드 : 한 프로그램에 스레드가 1개일 경우멀티 스레드 : 한 프로그램에 스레드가 2개 이상인 경우 👐🏻작업 단위로 보는 운영체제와 스레드👐🏻운영 체제의 입장에서  →  작업의 단위는 프로세스cpu입장에서 →  작업의 단위는 스레드 Process와 Thread의 차이점가장 큰 차이 키워드 : 독립성 (각각의 메모리를 할당 받는 것)→ 프로세스..

Language/JAVA 2024.08.24