일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- qtdesigner
- keras
- Perceptron
- DataSet
- 퍼셉트론
- img
- 블록체인
- 세계대전
- loss
- TensorFlow
- dtype
- terminal
- 브렉시트
- Python
- error
- 세계사
- deeplearning
- 유로화
- itksnap
- 비트코인
- TFRecord
- opencv
- 딥러닝
- numpy
- Training
- cv2
- TF
- Inference
- pyqt
- 유가 급등
- Today
- Total
목록전체 글 (120)
활연개랑

Haar Wavelet이란?최초의 웨이블릿(1910년)매우 단순한 형태의 계단 함수(step function)한 구간에서 +1, 그 다음 구간에서 -1수식적 정의:기본 Haar 함수 (mother wavelet)여기서 (1, 0)은a = 1 → 스케일(크기)b = 0 → 위치(시간 이동)(a, b) 파라미터 의미 a (scale)얼마나 wavelet을 압축/확대할지작을수록 더 좁고 세밀해짐b (shift)wavelet을 시간축에서 얼마나 이동시킬지오른쪽으로 움직일수록 더 뒤에 위치함 : 전체 구간에 대한 큰 구조왼쪽 절반 구간의 구조오른쪽 절반 구간의 구조 → 그림에서 세 파형이 바로 이걸 시각화하고 있음.이걸 왜 쓰는가?직관큰 스케일(a=1)은 큰 구조 (예: 이미지 전체 밝기 변화)작은 스케일(a=1..
신호는 복잡하지만 구조가 있음현실의 신호는 노이즈와 불규칙성을 포함하지만, 동시에 패턴(구조)도 있음.예: 쥐의 뇌파를 보면 세 번의 진동 구간이 있고, 각 구간은 빠른 진동이 겹쳐져 있음.과학자는 구조를 수학적으로 분석해야 함“여기 물결처럼 보이네?”는 비과학적임.노이즈 속에서 신호의 구조를 분석할 정확한 수학 도구가 필요함.주파수 영역과 시간 영역의 이중성두 수 x₁, x₂ → 이를 직접 전달하는 대신,합(y₁ = x₁ + x₂), 차(y₂ = x₁ - x₂)로 표현 가능.이런 표현은 시간 도메인 ↔ 주파수 도메인 변환의 간단한 사례임.y₁은 저주파 (변화 없음), y₂는 고주파 (급격한 변화).푸리에 변환 (Fourier Transform)Joseph Fourier의 아이디어:“모든 신호는 여러 주..
Transformer 기반 모델에서는 하나의 시퀀스를 하나의 벡터로 요약해야 하는 경우가 많음.예를 들어:문장 분류: 한 문장을 하나의 벡터로 표현이미지 분류: 한 장의 이미지를 하나의 벡터로 표현이럴 때 가장 자주 사용되는 방식이 바로 CLS(Classification) 토큰 활용임.CLS 토큰이란?BERT나 ViT 입력 시퀀스의 **맨 앞(0번째)**에 삽입되는 특수 토큰사전 정의된 의미가 없는 "빈칸" 같은 토큰모델이 학습을 통해 이 토큰에 의미를 부여하게 됨왜 CLS 토큰이 시퀀스를 대표하게 될까?1. 항상 같은 위치에 존재입력 시 맨 앞에 삽입됨위치 임베딩이 항상 고정됨모델이 예측 대상을 일관되게 학습할 수 있음2. 의미 없는 토큰 (초기 상태)실제 단어나 이미지 정보가 없음→ 자기 스스로 의미..
저번에 우분투22.04에서 itksnap이 커맨드로 설치되지 않는 문제가 있었는데요, https://tmdhhey.tistory.com/123 < 이 글에서 보이는 것과 같이, 직접 다운받아 설치했습니다. 이렇게 하다보니 itksnap이 터미널에서 command입력을 통해서만 실행되고, 메뉴에서 어플리케이션으로는 보이지 않더라구요. 불편한 점이 많아서 어플리케이션으로 바꿀 수 있도록 만들었습니다. 일단 원래는 특정 프로그램 설치파일을 다운받게되면, 아이콘이 함께 다운되는데 itksnap3.6버전에는 icon이 존재하지 않아서 아이콘은 인터넷에서 png파일을 따로 다운받았습니다. 1 터미널에 아래와 같이 입력합니다. sudo nano /usr/share/applications/{실행파일이름}.desktop..
string_list = df['name'].values[0] pandas 라이브러리로 dataframe의 'name' 컬럼을 list로 변경할 수 있습니다. 하지만 이렇게 만들게되면, list가 string 형태로 묶입니다. 예를들어, 'name' 컬럼의 값이 'John', 'Deo', 'Smith' 라면, output은 "['John', 'Doe', 'Smith']" < 이렇게 string 형태의 output이 나오게 됩니다. 따라서 아래 코드를 통해 작은따옴표와 띄어쓰기를 제거하고, 쉼표를 기준으로 나누어 list형태로 만들어줄 수 있습니다. name_list = df['name'].values[0].strip('[]').replace("'", "").replace(' ', '').split(',')
ls -lR | grep -c '\.zip$' ls -IR은 현재 디렉토리와 모든 하위 디렉토리의 파일을 나열하는 역할을 합니다. grep -c '\.zip$' 으로 확장자가 'zip'으로 끝나는 파일의 개수를 출력합니다. ls -1 /path/to/directory | wc -l ls -1 명령어는 해당 디렉토리의 모든 파일을 한 줄씩 나열하는 역할을 합니다. wc -l 명령어는 입력으로 받은 라인의 개수를 세는 역할을 합니다.
dcmdump -M +P "0028,0010" -M +P "0028,0011" -M +P "0028,0030" /path/*.dcm 위 명령어는 /path 디렉토리 내의 모든 .dcm 확장자를 가진 파일에 대해 DICOM 헤더 정보를 출력합니다. 출력되는 정보 중에서 0028,0010은 행(row) 해상도, 0028,0011은 열(column) 해상도, 0028,0030은 복셀 간격(voxel spacing)을 나타냅니다. 행, 열 해상도의 값은 정수로 표현되며, 복셀 간격은 mm 단위로 표시됩니다. 위 명령어를 실행하면 DICOM 파일의 각 속성에 대한 값을 확인할 수 있습니다.
여러개 zip파일을 그냥 unzip해버리면 폴더에 모든 파일이 들어가게 됩니다. zip파일에 해당하는 폴더를 만들어서 unzip하는 방법입니다. 일단 bash shell을 만들어야 합니다. terminal에 아래와 같이 입력하여 sh 파일을 생성해줍니다. nano unzip.sh unzip.sh파일에 아래와 같이 입력해주고, exit해줍니다. source_dir은 zip파일이 위치하는 directory, target_dir은 unzip된 폴더들이 위치할 directory #!/bin/bash source_dir="/a" target_dir="/b" find "$source_dir" -type f -name "*.zip" | while read -r zipfile; do folder_name=$(basen..