Konsla Hobby

konsla99 님의 블로그 입니다.

분류 전체보기 18

완전탐색 Exhausitive Search (DFS,BFS with C++)

완전 탐색 (Brute Force)모든 경우의 수를 다 체크해서 정답을 찾는 방법입니다.BIG O notation: 1초 = 10^8 연산 기준입력 조건: n INDEX비트 마스크순열 / 조합백 트래킹DFS / BFS완전 탐색 기법 활용 방법Brute Force: 단순 반복/조건문 활용 테스트비트 마스크: 부분 집합/상태 표현순열/조합: N개 중 순서 조합으로 뽑기재귀 호출: 상태 변화 + 깊이 우선 분할정복BFS/DFS: 그래프 탐색백트래킹: 조건 불만족 시 조기 탈출해결하고자 하는 문제의 가능한 경우의 수를 계산하고 모든 방법을 고려합니다. 기본적으로 N의 크기가 작을 때 이용합니다.1. 단순 Brute-Force (반복문 활용)무식하게 푼다는 의미로, for/while 문을 이용합니다. 일반적으로 ..

클린 코딩

클린코딩이란?클린코딩을 위한 8가지 원칙기타 클린코딩/코딩 컨벤션 팁클린코딩이란?클린코딩(Clean Code)이란 가독성이 높고, 의도가 명확하며, 유지보수가 용이한 코드를 작성하는 것을 의미합니다. 단순히 프로그램이 동작하는 것에 그치지 않고, 동료 개발자나 미래의 자신이 코드를 보았을 때 추가적인 설명 없이도 그 로직을 한눈에 파악할 수 있도록 설계된 코드를 말합니다. 깨끗한 코드는 버그를 줄이고, 협업의 효율성을 극대화하며, 소프트웨어의 생명 주기를 연장하는 핵심적인 역할을 합니다.클린 코딩을 위한 8가지 원칙1. 명명 규칙 (Naming Convention)Camel Case 사용: userName, isEnabled클래스: PascalCase (예: UserManager)상수: 대문자 + 언더스..

[블로그] 블로그 꾸미기 with AI

기존 블로그 모습해당 블로그의 모습에서 카테고리 섹션에 각각 대표 이미지를 추가하려한다.본인은 프론트엔드 쪽은 잘 하지 못하므로 AI의 도움을 받았다.Back Ground 다음과 같이 간단하게 지침을 만들어 주었다. 작업 과정에서 6천줄이 넘는 티스토리의 html, Css를 읽고 파싱하면 다음과 같은 문제가 있다. 작업이 길어지면 처리속도가 10분이 넘어간다. 파싱하는데에도 많은 시간이 소요 이는 웹에서와 마찬가지로 전체적인 문맥을 파악하려는 AI특성으로 인해 점점 느려진다. 따라서 이전에 Skills를 통해 html과 css작업에 대해 다음 2개의 서브에이전트 호출을 명시했다. 업무 내용 파악 및 정리 Agent 작업용 Agent ✦ 현재 ski..

PLAYGROUND 2026.04.19

코드의 가독성을 결정하는 Naming Conventions 가이드

코드의 가독성을 결정하는 Naming Conventions 가이드 코드 작성 시 식별자(변수, 함수, 타입 등)의 이름을 정하는 규칙은 협업과 유지보수의 핵심입니다. 주요 표기법과 실전 적용 방식을 정리했습니다. 주요 표기법 요약snake_case: 모든 단어를 소문자로 쓰고 언더바(_)로 연결 (DB, Python 등)camelCase: 첫 단어는 소문자, 이후 단어 첫 글자는 대문자 (Java, JS, C++ 변수/함수)PascalCase: 모든 단어의 첫 글자를 대문자로 표기 (클래스명, C++ 타입명)SCREAMING_SNAKE_CASE: 모든 단어를 대문자로 쓰고 언더바로 연결 (상수, 매크로)1. 나만의 네이밍 원칙 (C++/Embedded 중심)실제 프로젝트(Refactor: OD-291)에..

C++ Naming Conventions: 주요 원칙 및 가이드라인

C++ Naming Conventions: 주요 원칙 및 가이드라인 C++ 프로젝트의 가독성과 유지보수성을 높이기 위한 명명 규칙(Naming Convention) 정리입니다. 참고 문서Google C++ Style Guide: https://google.github.io/styleguide/cppguide.html#NamingGeeksforGeeks: https://www.geeksforgeeks.org/cpp/naming-convention-in-c/1. 주요 원칙대상표기법비고타입명PascalCase클래스, 구조체, 열거형 등변수/함수명camelCase소문자로 시작상수/매크로SCREAMING_SNAKE_CASE대문자와 _ 사용2. 일반적인 규칙명확한 이름 사용으로 가독성을 높여야 합니다.목적을 설명하..

안건 기반 Git 커밋 및 버전 관리 가이드

📂 버전 기반 이슈 관리 체계[작성 예시][Fix][내부 모터 구동 로직 수정건]IssueNum:- AB-123 (Main Issue): 모터 구동 시 발생하는 간헐적 타임아웃 오류 해결feat: 모니터링 상태 플래그(MTR_STAT) 전이 로직 변경chore: Main.c 내 노후화된 디버깅 주석 및 미사용 매크로 제거refactor: 제어 모듈 내 모터 관련 전역 변수 명명 규칙 통일Body:- motorRun.c: 탈조 방지를 위한 플래그 판정 조건식 수정 (if문 경계값 최적화)- Main.c: 불필요한 초기화 구문 정리 및 가독성 확보를 위한 코드 블록 재구성하드웨어 인터럽트 서비스 루틴(ISR) 내 플래그 업데이트 우선순위 조정Footer:- Related: AB-011 (인코더 피드백 관련..

TOOLS/Git & GitHub 2026.03.15

카메라 캘리브레이션 - 왜곡 제거

카메라 왜곡 제거왜곡 제거 방법캘리브레이션으로 왜곡 계수를 구한 후 다음 함수들로 왜곡을 보정할 수 있다:cv::undistort() - 올인원 함수cv::initUndistortRectifyMap() + cv::remap() - 2단계 방식cv::undistortPoints() - 특정 점만 처리 왜곡 제거 지도 (Undistortion Map)개념왜곡 제거 지도는 출력 이미지의 각 픽셀이 입력 이미지의 어느 좌표를 참조할지 저장한 매핑 테이블이다.왜 역방향 매핑인가?입력 이미지를 직접 변환하면 픽셀이 분산되어 출력 이미지에 구멍이 생긴다. 따라서 출력 이미지의 각 픽셀 위치에서 입력 이미지의 참조 위치를 찾는 역방향 매핑이 필요하다.계산 과정픽셀 → 이미지 평면: 출력 픽셀 좌표를 카메라 내부 파라미..

자소서 첨삭용 Tool 제작

취업 준비, 이제 AI와 함께 하세요: Gemini Career Assistant 1.0 AI 기반 자소서 첨삭 및 취업 준비의 모든 것수많은 채용 공고, 막막한 자기소개서 작성, 까다로운 면접 준비... 취업 준비의 어려움, 이제 혼자 끙끙 앓지 마세요. 제가 취업 준비 시절 직접 Gemini CLI를 활용하며 겪었던 경험을 바탕으로, 이 모든 과정을 도와줄 강력한 GUI 툴, Gemini Career Assistant를 만들었습니다. Gemini Career Assistant란?복잡한 명령어 없이, 몇 번의 클릭만으로 Gemini AI의 강력한 언어 모델을 활용해 채용 공고 분석부터 면접 질문 생성까지, 취업 준비의 전 과정을 효율적으로 도와주는 Windows용 데스크톱 애플리케이션입니다. https..

PLAYGROUND 2026.02.22

Git 커밋 컨벤션

Git 커밋 컨벤션: 효율적인 협업을 위한 메시지 작성 가이드1. 개요: 커밋 메시지가 왜 중요한가?Git을 이용한 버전 관리에서 커밋 메시지는 단순히 '기록'을 남기는 것을 넘어, 프로젝트의 역사 그 자체이자 협업의 핵심 도구입니다. 잘 작성된 커밋 메시지는 다음과 같은 역할을 수행합니다.가독성 향상: 변경 이력을 빠르게 파악하여, 코드 리뷰 및 유지보수를 용이하게 합니다.추적성 보장: 특정 이슈 또는 버그가 언제, 왜 수정되었는지 쉽게 찾아낼 수 있습니다.자동화 연동: 릴리스 노트 자동 생성 등 CI/CD 파이프라인과 연동하여 작업 효율을 높입니다.이 가이드에서는 보편적으로 사용되는 커밋 컨벤션의 필요성, 구조를 설명하고, 실제 현업에서 사용 가능한 스타일 예시를 제시합니다.2. 필요성: 표준화의 이..

TOOLS/Git & GitHub 2025.10.26

옵시디언 - 티스토리 마이그레이션 방법

개요옵시디언의 티스토리 플러그인이 막혔기 때문에정확히는 API가 더이상 지원하지 않기 떄문에 여러 방법을 탐구했다.마크다운 모드로 작성을 지원하지만 옵시디언의 콜아웃과 같은 기능은 미구현때문에 HTML로 변환하는 방법을 사용한다.옵시디언 내부 HTML변환 플러그인들은 추천하지 않는다사용해 보았을때 하나씩 부족했다.단! 콜아웃 등은 CSS에 추가가 필요하다.AI를 활용한다.방법우선 AI를 준비한다.로컬에 있는 옵시디언 노트를 변환하므로 CLI를 사용하는것이 편하다.다음 프롬프트와 함꼐 파일을 첨부한다.# 역할너는 옵시디언 마크다운을 티스토리 HTML로 변환하는 전문 변환기이다.# 지시문내가 제공하는 [옵시디언 마크다운]을 아래 [변환 규칙]에 따라 [티스토리용 HTML]로 변환해라.# 변환 규칙1. **..

노트북LM 사용법

개요https://notebooklm.google/- 기본 무료 소개 자신의 문서에 기반한 AI비서 업로드한 개인문서와 노트로 언어 모델을 학습시킨다. 개인 맞춤형 조교로 동작 한다. AI의 hallucination문제 개선 (출처를 명확히 인용) 주요기능 LLM 을 통한 보고서, 요약정리등의 기본기능을 지원한다. 마인드맵, 오디오, 동영상으로 요약을 할 수 있다. 다양한 자료 업로드 및 관리 ppt, md등의 파일 지원 링크 첨부가능 (youtube동영상 링크 ..

AI 2025.10.24

카메라 캘리브레이션

카메라 캘리브레이션 (Camera Calibration) 이론)카메라 모델과 캘리브레이션-카메라모델)카메라 모델과 캘리브레이션 -캘리브레이션)개요cv::calibrateCamera()를 사용한 계산방식, 이미지 왜곡 수정 방식에 대해 알아본다.필요한 체스판 코너의 수캘리브레이션을 통해 해결하려는 파라미터OpenCV의 경우 카메라 내장 행렬 - $f_x, f_y,c_x, c_y$ 4개 왜곡 파라미터 - $k_1, k_2, k_3, p_1, p_2$ (5개, $k_3~$는 조건부)코너 N개와 K개의 이미지가 각기 다른 위치에서 촬영됐다고 가정$2 \cdot N \cdot K$ 의 제약 조건을 갖는다. (x,y좌표에 대해 2)왜곡 파라미터를 무시해도 10개의 내,외부 파라미터가 존재$2 \cdot N \cdo..

반응형