전체 글 113

imread(), imshow() 사용해보기

opencv 실습에서, 가장 기초적인 부분인 imread와 imshow 함수를 사용해 봤다.실습을 위해 opencv를 include 해준다.#include   imread("fileName", flag): image + read: 이미지를 읽고 불러옴cv::Mat image = cv::imread("../test.jpg", 0);"fileName" = 불러올 이미지의 경로프로젝트 폴더 안 (cmake를 쓰는 경우 build 폴더 안)에 있는 경우 -> 이미지 파일 이름만 입력해도 됨flag = 불러올 옵션 (대표 3가지)IMREAD_COLOR or 1 = 이미지의 색정보를 포함해 불러옴, Default 설정이므로 생략 가능IMREAD_GRAYSCALE or 0 = 이미지를 흑백으로 변환해 불러옴IMRE..

비디오 코덱 2024.11.27

OpenCV란

**OpenCV (Open Source Computer Vision Library)**는 컴퓨터 비전과 이미지 처리 작업을 수행하기 위해 설계된 오픈소스 라이브러리입니다. OpenCV는 사진과 동영상에서 객체를 분석하고 처리하는 다양한 기능을 제공합니다. 다음은 OpenCV의 주요 특징과 사용 사례입니다:주요 특징다양한 프로그래밍 언어 지원:Python, C++, Java, MATLAB 등 여러 언어에서 사용할 수 있습니다.Python에서는 cv2라는 모듈 이름으로 사용됩니다.다양한 플랫폼 호환성:Windows, macOS, Linux는 물론, 모바일 플랫폼(iOS, Android)에서도 사용할 수 있습니다.풍부한 기능:이미지 필터링 (블러링, 경계선 검출 등)객체 검출 (얼굴, 사람, 물체 등)영상 변..

비디오 코덱 2024.11.27

Cmake에 대해

코덱 학습을 준비하면서 처음으로 Cmake를 사용하게 됐다.지피티를 이용해 학습하고 있어 답변을 저장한다.  CMake 정리CMake는 C++ 프로젝트를 빌드하고 관리하기 위한 강력한 도구입니다. 주로 크로스플랫폼 프로젝트에서 빌드 프로세스를 자동화하고, 코드 수정 시 효율적으로 변경사항을 반영할 수 있도록 도와줍니다. 지금까지 다룬 내용을 핵심적으로 정리해볼게요.1. CMake란?역할: CMake는 빌드 시스템 생성기입니다. 다양한 플랫폼(예: macOS, Windows, Linux)에서 Makefiles, Ninja, Visual Studio 프로젝트 파일 등을 생성하여 C++ 프로젝트를 빌드할 수 있도록 돕습니다.장점:여러 플랫폼에서 동일한 빌드 프로세스를 사용할 수 있음.대규모 프로젝트에서 파일과..

비디오 코덱 2024.11.25

OpenCV 설치 및 Cmake 설정 (MacOs)

비디오 코덱을 학습하기 위해서 VScode에 OpenCV를 다운받아 c++로 예제를 돌려보려고 했다.검색해 봤을 때, task.json과 c_cpp_properties.json을 수정하는 방법이 많아 이 방법으로 시도했지만, 계속 해서 오류가 났다.결국 지피티의 도움으로 cmake를 이용해 openCV를 이용하는데 성공했다. 우석 혹시 몰라 설치했던 openCV를 삭제했다.brew uninstall opencv  Homebrew로 OpenCV 설치1. Homebrew 업데이트:brew update 2. OpenCV 설치: brew install opencv 3. OpenCV 설치 확인:brew info opencv --> usr/local/Cellar/opencv/4.10.0_12 가 뜸--> Homeb..

비디오 코덱 2024.11.25

lib.es5.d.ts 분석하기 - 3.7 ~ 3.11

목차3.7 filter 만들기3.8 reduce 만들기3.9 flat 분석하기3.10 promise, awaited 타입 분석하기3.11 bind 분석하기 3.7 filter 만들기filter 메소드 : 배열의 각 요소를 검사하여 주어진 조건을 만족하는 요소들로만 새로운 배열을 생성하는 메소드 array.filter(callback(element, index, array), thisArg?) callback: 각 요소에 대해 실행할 함수로, 조건을 검사하는 로직을 포함element: 배열의 현재 요소index (선택적): 현재 요소의 인덱스array (선택적): filter 메서드를 호출한 배열thisArg (선택적): callback 함수 내부에서 this로 사용할 값불리언 반환: callback 함수..

typescript 2024.11.10

12주차 - 1

task 앱 만들기 파트 1 - 태스크 정리앱 만들기 시작2 - board list, list container 생성하기3 - 수정, 삭제 그리고 로그 기능 추가하기4 - 드래그 앤드 드롭 기능 생성하기5 - 로그인 페이지 생성하기 설치 npm init vite 각각 옵션 선책 후 npm i 까지 해주기  실행"scripts": { "dev": "vite", "build": "tsc -b && vite build", "lint": "eslint .", "preview": "vite preview" }, 스크립트에 dev라고 되어 있으므로  명령어 dev 사용npm run dev   - scr 경로 안에 components, types, hooks, store 폴더 생성  필요한 패..

lib.es5.d.ts 분석하기 - 3.1 ~ 3.6

목차3.1 Partial, Required, Readonly, Pick, Record3.2 Exclude, Extract, Omit, NonNullable3.3 Parameters,ConstructorParameters, ReturnType, InstanceType 3.4 ThisType3.5 forEach 만들기3.6 map 만들기 3장은 타입스크립트가 제공하는 타입이 모여 있는 lib.es5.d.ts 파일을 분석하는 장이다. 이 장을 통해 타입이 어떻게 선언됐는지 알 수 있다. .d.ts 파일에는 타입 선언만 있고 실제 구현부는 존재하지 않는다. 이는 자바스크립트 문법은 따로 구현돼 있거 ts에서는 타입선언만 제공하기 때문이다.이 장에서 타입을 직접 구현해 보며 이해할 수 있을 것같다. - Utili..

typescript 2024.11.03

회원가입 없이 서비스 이용하기 (기록하기) / uuid, cookie-parser 예제 정리까지

이번 프로젝트에서는 사용자의 회원가입이 없이 기록을 관리하도록 만들기로 했다.핸드폰 어플만 봐도 가입 없이 설치하면 바로 기록 관리를 할 수 있는 앱이 많기 때문에.. 어떻게 사용자의 기록을 관리하는 지 궁금해졌다.앱과 웹 서비스와는 다른 모듈을 사용해야하지만..! (앱은 플랫폼에 맞는 웹뷰를 사용) 나는 웹 서비스를 만들고 있기 때문에 uuid와 cookie-parser를 이용한 쿠키와 로컬 스토리지를 사용하는 방법으로 결정했다. 쿠키와 로컬 스토리지를 사용쿠키 또는 로컬 스토리지에 사용자 고유 식별자인 uuid를 저장사용자가 웹 사이트를 방문할 때마다, 이 식별자를 사용해 데이터 조회, 업데이트 가능식별자가 없으면 새로 생성하여 DB에 기록하고 사용자 장치의 쿠키나 로컬 스토리지에 저장 - 장점 : ..

DB 설정하고 MySQL connection pool 사용하기 / try-catch와 비동기 고민

DB 설정mariadb.js //sql 모듈 소환const mysql = require("mysql2");//db와 연결 통로 생성const pool = mysql.createPool({ host: "localhost", user: "root", //디비 접속 아이디 password: "root", //디비 접속 비범 database: "my_routine", //접속 원하는 데이타베이스명 connectionLimit: 5, // 최대 연결 수});module.exports = pool;우선 데이터 베이스를 설정하기 위한 파일을 따로 생성해줬다. 강의를 들었을 땐, 그냥 createConnection만 사용했는데, 지피티에서는 계속 pool로 연결하는 코드가 나왔다. 알아봤더니 pool이 더 효..