๋ชฉ๋ก์ ์ฒด ๊ธ (1005)
๐ ๊ณต๋ถํ๋ ์ง์ง์ํ์นด๋ ์ฒ์์ด์ง?
Murtaza's Workshop ์ ์ ํ๋ธ๋ฅผ ์ฐธ๊ณ ํด์ ๊ณต๋ถํ๋ฉฐ ์์ฑํ์์ต๋๋ค :-)>=> LEARN OPENCV C++ in 4 HOURS | Including 3x Projects | Computer Vision ๐ Drawing shapes๐ง [Default] Drawing shapes#include // OpenCV์์ ์ง์ํ๋ ๋ชจ๋ ๊ธฐ๋ฅ#include // ๋น๋์ค ์ถ์ ๋ฐ ๋ฐฐ๊ฒฝ segmentation๊ณผ ๊ด๋ จ๋ ๋ฃจํด#include // ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์ ์ด ์ ์ธ (Mat ์ด๋ Point๊ฐ ์ ์ธ, ํ๋ ฌ ์ฐ์ฐ ํน์ ๋ฒกํฐ ์ฐ์ฐ)#include // ์๋์ฐ ํ๋ฉด, UI์ฒ๋ฆฌ(์ฌ๋ผ์ด๋, ๋ฒํผ ๋ฑ) ๋ฐ ๋ง์ฐ์ค ์ ์ด ๊ฐ๋ฅ#include #include using namespace cv;using ..
Murtaza's Workshop ์ ์ ํ๋ธ๋ฅผ ์ฐธ๊ณ ํด์ ๊ณต๋ถํ๋ฉฐ ์์ฑํ์์ต๋๋ค :-)>=> LEARN OPENCV C++ in 4 HOURS | Including 3x Projects | Computer Vision ๐ Resize and Crop๐ง Resize์ด๋ฏธ์ง๋ฅผ ํ๋ ๋๋ ์ถ์cv2.resize ( img , dsize, fx, fy, interpolation ) img : image file dsize : ๊ฐ๋ก, ์ธ๋ก ํํ์ ํํ์ ์ง์ ํ์ฌ, ํ๋ ๋ฐ ์ถ์ ๊ฐ๋ฅ ex) (100, 200)fx : ๊ฐ๋ก ์ฌ์ด์ฆ์ ๋ฐฐ์ , 2๋ฐฐ ํ๋๋ 2.0 , 1/2 ์ถ์๋ 0.5 exfy : ์ธ๋ก ์ฌ์ด์ฆ์ ๋ฐฐ์interpolation : ๋ณด๊ฐ๋ฒ ( ์ด๋ค ๋ฐฉ์์ผ๋ก ์ด๋ฏธ์ง ๊ฐ์ ์ฑ์ธ๊ฒ์ธ๊ฐ ) INTE..
Murtaza's Workshop ์ ์ ํ๋ธ๋ฅผ ์ฐธ๊ณ ํด์ ๊ณต๋ถํ๋ฉฐ ์์ฑํ์์ต๋๋ค :-)>=> LEARN OPENCV C++ in 4 HOURS | Including 3x Projects | Computer Vision ๐ RGB(Red, Green, Blue) ์์์ ํํํ๋ ๋ฐฉ๋ฒ์ผ๋ก๋ RGB(Red, Green, Blue) : ๋นจ๊ฐ, ์ด๋ก, ํ๋ ์ธ ๊ฐ์ง ์์ ๋น์ ์์ด์ ์ํ๋ ์์ ๋ง๋ฆ: ๊ฐ ์์์ 0~255 ์ฌ์ด์ ๊ฐ์ผ๋ก ํ์ํ๊ณ ๊ฐ์ด ์ปค์ง์๋ก ํด๋น ์์์ ๋น์ด ๋ฐ์์ง๋ ์๋ฆฌ: RGB = (255, 255, 255) ์ผ ๋๋ ํฐ์์ด๊ณ , RGB = (0, 0, 0) ์ผ ๋๋ ๊ฒ์์ OpenCV๋ ๊ทธ ๋ฐ๋์ ์์์ธ BGRRGBA๋ RGB์ A(์ํ, alpha)๊ฐ ์ถ๊ฐ๋ ์์ ํ๊ธฐ๋ฒ: A๋ ๋ฐฐ๊ฒฝ์ ํฌ..
Murtaza's Workshop ์ ์ ํ๋ธ๋ฅผ ์ฐธ๊ณ ํด์ ๊ณต๋ถํ๋ฉฐ ์์ฑํ์์ต๋๋ค :-)>=> LEARN OPENCV C++ in 4 HOURS | Including 3x Projects | Computer Vision ๐ Read Images, Videos and Webcam๐ง Importing Images#include // OpenCV์์ ์ง์ํ๋ ๋ชจ๋ ๊ธฐ๋ฅ#include // ๋น๋์ค ์ถ์ ๋ฐ ๋ฐฐ๊ฒฝ segmentation๊ณผ ๊ด๋ จ๋ ๋ฃจํด#include // ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์ ์ด ์ ์ธ (Mat ์ด๋ Point๊ฐ ์ ์ธ, ํ๋ ฌ ์ฐ์ฐ ํน์ ๋ฒกํฐ ์ฐ์ฐ)#include // ์๋์ฐ ํ๋ฉด, UI์ฒ๋ฆฌ(์ฌ๋ผ์ด๋, ๋ฒํผ ๋ฑ) ๋ฐ ๋ง์ฐ์ค ์ ์ด ๊ฐ๋ฅ#include #include using namespace cv..
=> ๋ฐ๋ผํ๋ฉด์ ๋ฐฐ์ฐ๋ NestJS ๐งธ ์ค์ (Configuration) runtime ๋์ค์ ๋ฐ๋๋ ๊ฒ์ด ์๋, ์ ํ๋ฆฌ์ผ์ด์ ์ด ์์ํ ๋ ๋ก๋๊ฐ ๋์ด ๊ทธ ๊ฐ๋ค์ ์ ์ ์ค์ ํ์ผ์ ์ฌ๋ฌ๊ฐ์ง ํ์ผ ํ์์ ์ฌ์ฉ (XML, JSON, YAML, Environmant, Varaiables) ๐งธ Codebase VS Environment Variables (ํ๊ฒฝ๋ณ์) XML, JSON, YAML : Codebase ์ ํด๋น & ํ๊ฒฝ ๋ณ์ => ๋๋๋ ์ด์ : ๋น๋ฐ๋ฒํธ์ API KEY ๊ฐ์ ๋จ๋ค์๊ฒ ๋ ธ์ถ๋๋ฉด ์๋๋ ์ ๋ณด๋ฅผ ์ฃผ๋ก ํ๊ฒฝ ๋ณ์๋ก ์ฒ๋ฆฌ ๐ Codebase : ์ผ๋ฐ์ ์ผ๋ก Port ์ฒ๋ผ ๋ ธ์ถ๋๋ ์๊ด ์๋ ์ ๋ณด๋ค ๐ Environment Variables (ํ๊ฒฝ๋ณ์) : ๋น๋ฐ๋ฒํธ, API ์ฒ๋ผ ๋ ธ์ธจ๋๋ฉด ์๋๋..
=> ๋ฐ๋ผํ๋ฉด์ ๋ฐฐ์ฐ๋ NestJS ๐งธ ๋ก๊ทธ ์ด๋์์ ๋ฌธ์ ๊ฐ ๋๋์ง, ๋น ๋ฅด๊ฒ ์ ํํ๊ฒ ํ์ ํ๊ธฐ ์ํด ๋ก๊ทธ๊ฐ ์ค์ํจ ๐ ๋ก๊ทธ์ ์ข ๋ฅ - Log : ์ค์ํ ์ ๋ณด์ ๋ฒ์ฉ ๋ก๊น - Warning : ์น๋ช ์ ์ด๊ฑฐ๋ ํ๊ดด์ ์ด์ง ์์ ์ฒ๋ฆฌ๋์ง ์์ ๋ฌธ์ - Error : ์น๋ช ์ ์ด๊ฑฐ๋ ํ๊ดด์ ์ธ ์ฒ๋ฆฌ๋์ง ์์ ๋ฌธ์ - Debug : ์ค๋ฅ ๋ฐ์์ ๋ก์ง์ ๋๋ฒ๊ทธํ๋ ๋ฐ ๋์์ด ๋๋ ์ ์ฉํ ์ ๋ณด (๊ฐ๋ฐ์ ์ฉ) - Berbose : ์์ฉ ํ๋ก๊ทธ๋จ์ ๋์์ ๋ํ ํต์ฐฐ๋ ฅ ์ ๊ณตํ๋ ์ ๋ณด (์ด์์ ์ฉ) ๐ ๋ก๊ทธ ๋ ๋ฒจ ๐งธ ๋ก๊ทธ ์ ์ฉํ๊ธฐ expressjs ๋ฅผ ์ฌ์ฉํ ๋๋ Wiston ์ด๋ ๋ชจ๋ ์ด๋ค nestjs ์๋ ์ด๋ฏธ build-in ๋ logger ํด๋์ค ์์ ๐ main.ts import { NestFactory } from '@n..
=> ๋ฐ๋ผํ๋ฉด์ ๋ฐฐ์ฐ๋ NestJS ๐งธ ์์ ์ด ์์ฑํ ๊ฒ์๋ฌผ์ ์ญ์ ํ๊ธฐ ํ์ฌ๋, ๊ฒ์๋ฌผ์ ๊ฐ์ ธ์ฌ ๋ ์ด๋ ํ ์ ์ ์ธ์ง์ ์๊ด์์ด ๋ชจ๋ ๊ฒ์๋ฌผ์ ๊ฐ์ ธ์ด ๊ฒ์๋ฌผ์ ๊ฐ์ ธ์ฌ ๋ ํด๋น ์ ์ ๊ฐ ์์ฑํ ๊ฒ์๋ฌผ๋ง ๊ฐ์ ธ์ค๋๋ก ํ๋ค ๐ boards.controller.ts // ๋ค์ด์ค๋ ์์ฒญ์ ์ฒ๋ฆฌํ๊ณ ํด๋ผ์ด์ธํธ์ ์๋ต์ ๋ฐํํจ // @Controller ๋ฐ์ฝ๋ ์ดํฐ๋ก ํด๋์ค๋ฅผ ๋ฐ์ฝ๋ ์ด์ ํ์ฌ ์ ์ํจ // Handler : @Get, @Post, @Delete ๋ฑ๊ณผ ๊ฐ์ ๋ฐ์ฝ๋ ์ดํฐ๋ก ์ฅ์ ๋ ์ปจํธ๋กค๋ฌ ํด๋์ค ๋ด์ ๋จ์ํ ๋ฉ์๋ import { Body, Controller, Delete, Get, Param, ParseIntPipe, Patch, Post, UseGuards, UsePipes, ValidationPipe } f..
=> ๋ฐ๋ผํ๋ฉด์ ๋ฐฐ์ฐ๋ NestJS ๐งธ ํด๋น ์ ์ ์ ๊ฒ์๋ฌผ๋ง ๊ฐ์ ธ์ค๊ธฐ (getAllBoards) ํ์ฌ๋, ๊ฒ์๋ฌผ์ ๊ฐ์ ธ์ฌ ๋ ์ด๋ ํ ์ ์ ์ธ์ง์ ์๊ด์์ด ๋ชจ๋ ๊ฒ์๋ฌผ์ ๊ฐ์ ธ์ด ๊ฒ์๋ฌผ์ ๊ฐ์ ธ์ฌ ๋ ํด๋น ์ ์ ๊ฐ ์์ฑํ ๊ฒ์๋ฌผ๋ง ๊ฐ์ ธ์ค๋๋ก ํ๋ค ๐ boards.controller.ts // ๋ค์ด์ค๋ ์์ฒญ์ ์ฒ๋ฆฌํ๊ณ ํด๋ผ์ด์ธํธ์ ์๋ต์ ๋ฐํํจ // @Controller ๋ฐ์ฝ๋ ์ดํฐ๋ก ํด๋์ค๋ฅผ ๋ฐ์ฝ๋ ์ด์ ํ์ฌ ์ ์ํจ // Handler : @Get, @Post, @Delete ๋ฑ๊ณผ ๊ฐ์ ๋ฐ์ฝ๋ ์ดํฐ๋ก ์ฅ์ ๋ ์ปจํธ๋กค๋ฌ ํด๋์ค ๋ด์ ๋จ์ํ ๋ฉ์๋ import { Body, Controller, Delete, Get, Param, ParseIntPipe, Patch, Post, UseGuards, UsePipes, Vali..