본문 바로가기

분류 전체보기27

Struct Padding (구조체 패딩) 개요 구조체는 가장 높은 자료형 단위로 padding 함 구조체 read의 비효율 해소 아래와 같은 상황에서 32Bit 운영체제는 long long (8 Byte) 하나 읽자고 3번 접근해야 함 따라서 char(1Byte)뒤에 3Byte 패딩을 해줘서 long long을 읽을때는 2번만 접근할 수 있도록 padding 해줌 하지만 자료형이 차지하는 크기는 운영체제마다 다르므로 padding이 목적과 다르게 되는 경우가 있으므로 #pragma pack(크기)이나 직접 구조체에 dummy를 추가하는 방식으로 구현 char(1Byte), long long(8Byte) 가 있는 struct (9Byte)가 존재 32Bit(4Byte) 운영체제는 해당 구조체에서 long long을 읽기위해 3번의 접근이 필요함 .. 2023. 12. 31.
Byte Ordering (바이트 오더링) 1. Big Endian과거의 시스템TCP/UDP/IP 통신 프로토콜에서 사용큰 주소(밑 메모리)에 마지막 값이 들어있음메모리 관찰 시 가독성 높음2. Little Endian비교적 최근의 시스템현대의 컴퓨터(인텔과 같은 프로세서를 이용하는)는 little endian 방식으로 메모리 저장작은 주소(위 메모리)에 마지막 값이 들어있음연산 시 carry 처리 용이12 34 + 56 78 계산 시little endian 방식에서는(메모리 시작)34 12(메모리 끝) + (메모리 시작)78 56(메모리 끝)으로 구성따라서 메모리 시작부터 계산 시 캐리가 자연스레 메모리 끝으로 이동하며 한번에 연산3. Translation네트워크 바이트 오더링으로 변환htons (Host To Network Short): sh.. 2023. 12. 30.
NAFFT-Net 구현 (인공지능심화 과제) NAFFT-Net Report blog: https://ech97.tistory.com/entry/NAFFT-Net github: https://github.com/ech97/NAFFT-Net 과목명인공지능심화 교수김원준 교수님학과전기전자공학부학번201910919이름이찬현 1. 요약 U-Net 구조를 Base Architecture로 삼았으며, NAFNet의 Basic Block을 이용하여 기본 모델의 틀을 구성하였고, 아래의 개선점들을 추가하며 모델을 완성하였다. 개선점 1; FFT Block 추가 영상신호처리 과목을 통해 Blur에는 Low-frequency 요소가 더 많음을 학습 하지만 CNN은 Feature의 Edge나 Contour와 같은 High-Frequency 성분을 추출하고 인식함 따라서.. 2022. 12. 5.
DeepRFTNet 쉬운 논문 리뷰 DeepRFT [Reference] 논문 링크: Deep Residual Fourier Transformation for Single Image Deblurring Github: 2021년 11월(Arxiv) Xintian Mao, Yiming Liu, Wei Shen, Qingli Li, Yan Wang 목차 [TOC] Abstract 기존 ResBlock을 이용한 Deblurring 작업은 고주파 정보에 있어선 잘 Capture하지만 저주파에선 부족한 부분을 보여왔음 또한 ResBlock은 Deblurring하는데 있어 중요한, long-distance 정보를 잘 파악하지 못하는 문제가 있음 따라서 저주파~고주파, 단거리~장거리 정보를 모두 Capture할 수 있는 Res FFT-Conv Block을.. 2022. 11. 27.