๐Ÿ’ป My Work 112

[๋”ฅ๋Ÿฌ๋‹] Optical Music Recognition(OMR) ๋“œ๋Ÿผ ์•…๋ณด ์ธ์‹ ๋ชจ๋ธ

๐Ÿƒ‍โ™‚๏ธ ํ•ด๋‹น ๊ธ€์€ Tensorflow๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ์— ํ™˜๊ฒฝ์ด ๊ตฌ์ถ•๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.Anaconda3 + tensorflow ํ‚ค์›Œ๋“œ๋กœ ๊ตฌ๊ธ€๋งํ•ด์„œ ๋‚˜์˜ค๋Š” ๋ธ”๋กœ๊ทธ๋“ค์„ ์ฐธ๊ณ  ๋ฐ”๋ž๋‹ˆ๋‹ค. :) 00. ๋ชฉํ‘œ๋“œ๋Ÿผ ์•…๋ณด ์ด๋ฏธ์ง€๋ฅผ ๋„ฃ์—ˆ์„ ๋•Œ, ์Œํ‘œ(ํ•ด๋‹น ๊ธ€์—์„œ๋Š” ์Œ์ •๋งŒ ๊ตฌ๋ถ„)๋ฅผ ๊ตฌ๋ถ„ํ•˜๋Š” ๋ชจ๋ธ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. •  Input : ์•…๋ณด ์ด๋ฏธ์ง€ •  Output : ์Œ์ • ์•„๋ž˜๋Š” ํ•ด๋‹น ๊ธ€์—์„œ ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ์…‹ ์ƒ˜ํ”Œ์ž…๋‹ˆ๋‹ค. ๊ฐ ๋งˆ๋””์— ๋Œ€ํ•œ ์ด๋ฏธ์ง€์™€ ๋ผ๋ฒจ ๋ฐ์ดํ„ฐ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.๋“œ๋Ÿผ ๋ฐ์ดํ„ฐ ์…‹ ๋ฐ์ดํ„ฐ์…‹์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.ํŠนํžˆ, ๋ผ๋ฒจ์€ Alfaro๊ฐ€ ๋‹จ์ผ์Œํ–ฅ ์Œ์•…์„ ์ขŒ์—์„œ ์šฐ๋กœ ์ฝ๋Š” 1์ฐจ์› ์‹œํ€€์Šค๋กœ ๋‚˜ํƒ€๋‚ด๊ธฐ ์œ„ํ•ด ์ œ์•ˆํ•œ ํ˜•ํƒœ์ž…๋‹ˆ๋‹ค.์ด ์ธ์ฝ”๋”ฉ์€ ๊ฐ ์ฐจ๋ก€๋Œ€๋กœ ๋‚˜ํƒ€๋‚˜๋Š” note์™€ symbol ์‚ฌ์ด์— '+' ๊ธฐํ˜ธ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ , ์ฝ”๋“œ์˜ ๊ฐœ๋ณ„ ์Œํ‘œ๋ฅผ ..

[๋”ฅ๋Ÿฌ๋‹] TensorFlow๋ฅผ ์‚ฌ์šฉํ•œ ๋”ฅ๋Ÿฌ๋‹ CNN ๋“œ๋Ÿผ ์†Œ๋ฆฌ ๋ถ„๋ฅ˜

๐Ÿƒ‍โ™‚๏ธ ํ•ด๋‹น ๊ธ€์€ Tensorflow๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ์— ํ™˜๊ฒฝ์ด ๊ตฌ์ถ•๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Anaconda3 + tensorflow ํ‚ค์›Œ๋“œ๋กœ ๊ตฌ๊ธ€๋งํ•ด์„œ ๋‚˜์˜ค๋Š” ๋ธ”๋กœ๊ทธ๋“ค์„ ์ฐธ๊ณ  ๋ฐ”๋ž๋‹ˆ๋‹ค! 00. ๋ชฉํ‘œ ๋“œ๋Ÿผ ์†Œ๋ฆฌ ํŒŒ์ผ์„ ๋„ฃ์—ˆ์„ ๋•Œ, ๋ฌด์Šจ ๋ถ์„ ์ณค๋Š” ์ง€ ๊ตฌ๋ถ„ํ•˜๋Š” ๋ชจ๋ธ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. input : output : Tom 01. ๊ธฐ๋ณธ ์ง€์‹ ์Œํ–ฅ์˜ ํŠน์„ฑ์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ์ง€์‹ ๐Ÿ“Œ ์ŠคํŽ™ํŠธ๋Ÿผ(Spectrum) ์†Œ๋ฆฌ ์‹ ํ˜ธ๋ฅผ ์ฃผํŒŒ์ˆ˜์™€ ์ง„ํญ์œผ๋กœ ๋ถ„์„ ํ‘ธ๋ฆฌ์— ๋ณ€ํ™˜์„ ์ ์šฉํ•˜์—ฌ ์‹œ๊ฐ„ ์˜์—ญ์˜ ์‹ ํ˜ธ๋ฅผ ์ฃผํŒŒ์ˆ˜ ์˜์—ญ์œผ๋กœ ๋ณ€ํ™˜ ๐Ÿ“Œ ๋ฉœ ์ŠคํŽ™ํŠธ๋กœ๊ทธ๋žจ(Mel Spectrogram) ์ธ๊ฐ„์˜ ์ฒญ๊ฐ ์˜์—ญ์„ ๋ฐ˜์˜ํ•œ Mel scale์„ ์ ์šฉ - ์ธ๊ฐ„์€ ๋ณดํ†ต ์ €์ฃผํŒŒ๋ฅผ ๋” ์ž˜ ์ธ์‹ํ•จ ๐Ÿ“Œ MFCC(Mel-Frequency Cepstral Coefficient) ์˜ค๋””์˜ค ์‹ ํ˜ธ์—์„œ..

[์œ ๋‹ˆํ‹ฐ] 2D ํŠน์ • ๋ฒ”์œ„ ๋‚ด์˜ ๋žœ๋คํ•œ ์œ„์น˜์— ๊ฒŒ์ž„ ์˜ค๋ธŒ์ ํŠธ ์ƒ์„ฑํ•˜๊ธฐ

์•„๋ž˜ ๊ธ€์„ ์ฐธ๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค. [Unity] ํŠน์ • ๋ฒ”์œ„ ๋‚ด์—์„œ ๋žœ๋คํ•œ ์œ„์น˜์— ์˜ค๋ธŒ์ ํŠธ ์Šคํฐํ•˜๊ธฐ unity์—์„œ ํŠน์ • ๋ฒ”์œ„ ๋‚ด์— ๋žœ๋คํ•œ ์œ„์น˜์— ์˜ค๋ธŒ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์šฐ์„  unity์—์„œ ์›ํ•˜๋Š” ๋ฒ”์œ„๋ฅผ ํŠน์ •ํ•ด๋ด…์‹œ๋‹ค. .png) ์ €๋Š” ์ด Plane ์˜ค๋ธŒ์ ํŠธ ์œ„์—์„œ ๋žœ๋คํ•œ ์œ„์น˜์— ์บก์Š์ด ์ƒ์„ฑ velog.io ๐Ÿ“Œ ๋ฒ”์œ„ ์ง€์ • ์›ํ•˜๋Š” ๋ฒ”์œ„๋ฅผ ์ฝœ๋ผ์ด๋”๋กœ ์ •ํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ“Œ ๋žœ๋คํ•œ ์œ„์น˜ ์–ป๋Š” ํ•จ์ˆ˜ ์ฝœ๋ผ์ด๋” ์‚ฌ์ด์ฆˆ๋ฅผ ์ด์šฉํ•˜์—ฌ ์ฝœ๋ผ์ด๋” ๋‚ด์˜ ๋žœ๋คํ•œ ๊ฐ’์„ ์–ป์„ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. // ๋žœ๋ค ์œ„์น˜ ์–ป๊ธฐ Vector3 GetRandomPosition() { GameObject balloonRange = transform.Find("Balloons").gameObject; // Balloons ์˜ค๋ธŒ์ ํŠธ BoxCollider2D r..

[์œ ๋‹ˆํ‹ฐ] ํ”ผ ์ดํŽ™ํŠธ ํšจ๊ณผ : Particle System(ํŒŒํ‹ฐํด ์‹œ์Šคํ…œ)

์œ ๋‹ˆํ‹ฐ์—์„œ Particle System ์„ ์ด์šฉํ•œ ์ดํŽ™ํŠธ ์ œ์ž‘ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. โœจ ์•„๋ž˜๋Š” unity์—์„œ ์ œ๊ณตํ•˜๋Š” Particle System ๋งค๋‰ด์–ผ์ž…๋‹ˆ๋‹ค. ๋ฉ”์ธ ๋ชจ๋“ˆ - Unity ๋งค๋‰ด์–ผ ํŒŒํ‹ฐํด ์‹œ์Šคํ…œ ๋ชจ๋“ˆ์€ ์‹œ์Šคํ…œ ์ „์ฒด์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ์ „์—ญ ํ”„๋กœํผํ‹ฐ๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฐ ํ”„๋กœํผํ‹ฐ๋Š” ๋Œ€๋ถ€๋ถ„ ์ƒˆ๋กœ ์ƒ์„ฑ๋œ ํŒŒํ‹ฐํด์˜ ์ดˆ๊ธฐ ์ƒํƒœ๋ฅผ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”์ธ ๋ชจ๋“ˆ์„ ํŽผ์น˜๊ฑฐ๋‚˜ ์ ‘์œผ๋ ค docs.unity3d.com Particle System ์บ๋ฆญํ„ฐ์˜ ์ž์‹ ์˜ค๋ธŒ์ ํŠธ๋กœ ์ƒ์„ฑํ•ด์ค๋‹ˆ๋‹ค. ๊ทธ ํ›„, ์ธ์ŠคํŽ™ํ„ฐ์ฐฝ์—์„œ Particle System์„ ์ถ”๊ฐ€ํ•ด์ค๋‹ˆ๋‹ค. ๊ทธ๋Ÿผ ์•„๋ž˜์™€ ๊ฐ™์ด ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์„ค์ •๋œ ํšจ๊ณผ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์„ ๊ฒ๋‹ˆ๋‹ค. ์ด์ œ ์—ฌ๊ธฐ์—์„œ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์„ค์ •๊ฐ’์„ ๋ฐ”๊ฟ”๊ฐ€๋ฉฐ ํŒŒํ‹ฐํด์„ ์›ํ•˜๋Š” ํ˜•ํƒœ๋กœ ์กฐ์ ˆํ•˜๋ฉฐ ํ”ผ ํšจ๊ณผ๋กœ ์„ค์ •ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค!! ๐Ÿ“ Re..

[์œ ๋‹ˆํ‹ฐ] ํŠน์ • ๊ฒŒ์ž„ ์˜ค๋ธŒ์ ํŠธ ๊ฐ์ง€ ๊ตฌํ˜„ (ex.์•„์ดํ…œ ๋จน๊ธฐ)

์ถฉ๋Œ ๊ฐ์ง€ ์œ ๋‹ˆํ‹ฐ์˜ ๋‚ด์žฅ๋œ ๋ฌผ๋ฆฌ ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉํ•˜์—ฌ ์บ๋ฆญํ„ฐ์˜ GameObject๊ฐ€ ์•„์ดํ…œ์˜ GameObject์™€ ์ถฉ๋Œํ•  ๋•Œ๋ฅผ ๊ฐ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์บ๋ฆญํ„ฐ ์Šคํฌ๋ฆฝํŠธ์˜ "OnCollisionEnter" ๋˜๋Š” "OnTriggerEnter" ๋ฉ”์„œ๋“œ์—์„œ ์ถฉ๋Œํ•˜๋Š” ๊ฒƒ์„ ๊ฐ์ง€ํ•ฉ๋‹ˆ๋‹ค. 01. Tag ์œ ๋‹ˆํ‹ฐ ์—๋””ํ„ฐ์ฐฝ์—์„œ GameObjects ํ•ญ๋ชฉ์— ํƒœ๊ทธ๋ฅผ ํ• ๋‹นํ•œ ๋‹ค์Œ ์บ๋ฆญํ„ฐ ์Šคํฌ๋ฆฝํŠธ์˜ "OnCollisionEnter" ๋˜๋Š” "OnTriggerEnter" ๋ฉ”์„œ๋“œ์—์„œ ์ถฉ๋Œํ•˜๋Š” ๊ฐœ์ฒด์˜ ํƒœ๊ทธ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. void OnCollisionEnter(Collision collision) { if (collision.gameObject.CompareTag("Item")) { // The colliding object is an..

[React/JS] arrow function

arrow function ์— ๋Œ€ํ•œ ๊ธ€์„ ์ฒจ๋ถ€ํ•ฉ๋‹ˆ๋‹ค. Arrow function expressions - JavaScript | MDN An arrow function expression is a compact alternative to a traditional function expression, with some semantic differences and deliberate limitations in usage: developer.mozilla.org ๐Ÿค” ๋ฌธ์ œ ์ƒํ™ฉ ์•„๋ž˜์™€ ๊ฐ™์€ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ ค๋‹ˆ ์ œ๋Œ€๋กœ ์ž‘๋™๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. const setIsActive = (open) => (event) => { setCategoryState(open); }; function onClickLeaf() { setI..

[Material Design] Material-UI(MUI) <palette colors ์ปค์Šคํ…€ํ•ด์„œ ์ƒ‰ ์ถ”๊ฐ€ํ•˜๊ธฐ>

default theme default theme์—์„œ palette๋ฅผ ๋ณด์ž๋ฉด ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. Default theme - Material UI Here's what the theme object looks like with the default values. mui.com Palette ์ปค์Šคํ…€ Palette - Material UI The palette enables you to modify the color of the components to suit your brand. mui.com ์ €๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด myBlue ๋ฅผ ์ƒˆ๋กœ ์ •์˜ํ•ด์„œ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. import { createTheme, ThemeProvider, responsiveFontSizes, } from "@mui/material/style..

[Material Design] Material-UI(MUI) <์ค„๋ฐ”๊ฟˆ, white-space : "pre-wrap" ์†์„ฑ>

์•„๋ž˜์™€ ๊ฐ™์ด ์ค„๋ฐ”๊ฟˆ์ด ์ ์šฉ๋˜๊ฒŒ ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ์ฝ”๋“œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. import LightbulbOutlinedIcon from "@mui/icons-material/LightbulbOutlined"; {`๊ณผํ•™ ๊ณตํ•™`} white-space ์†์„ฑ(pre, pre-wrap, pre-line ์ฐจ์ด) white-space ์†์„ฑ(pre, pre-wrap, pre-line ์ฐจ์ด) ์˜ค๋Š˜์€ ์š”์†Œ ์•ˆ์— ๊ณต๋ฐฑ ์ฒ˜๋ฆฌ๋ฅผ ์–ด๋–ป๊ฒŒ ํ• ์ง€ ์ง€์ •ํ•˜๋Š” ์†์„ฑ์ž…๋‹ˆ๋‹ค. white space๋ž€ ์—ฌ๋ฐฑ์ด๋ผ๊ณ ๋„ ํ•˜๋Š”๋ฐ html์—์„œ๋Š” ๊ณต๋ฐฑ, ๊ณต๋ž€์œผ๋กœ ์ดํ•ดํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. โ–ถํƒœ๊ทธ ์ž‘ aboooks.tistory.com ์œ„ ๋ธ”๋กœ๊ทธ ๊ธ€์„ ์ฐธ๊ณ ํ•˜์—ฌ ์ค„๋ฐ”๊ฟˆ์„ ์ ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์•„๋ž˜์™€ ๊ฐ™์ด ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. {cont.icon} {`๊ณผํ•™ ๊ณตํ•™`}

[Material Design] Material-UI(MUI) <๊ธ€์ž ์ˆ˜ ๋„˜์–ด๊ฐ€๋ฉด ๋ง์ค„์ž„ํ‘œ / ์›ํ•˜๋Š” ๋งŒํผ์˜ ์ค„๋งŒ ๋ณด์ด๊ฒŒ ํ•˜๊ธฐ>

Material ui text ellipsis after two line How can I ellipsis a text after two line in material ui? Here https://material-ui.com/system/display/#text-overflow show for single line stackoverflow.com ์ปจํ…์ธ  ๋‚ด์šฉ โœจโœจโœจ

[React/JS] ํŽ˜์ด์ง€ URL ๋ณต์‚ฌํ•˜๊ธฐ - ํ…์ŠคํŠธ ๋ณต์‚ฌ Clipboard API

๊ธฐ์กด์— ํ…์ŠคํŠธ ๋ณต์‚ฌ๋ฅผ ๊ตฌํ˜„ํ•˜๋ ค๋ฉด document.execCommand("copy") ์„ ์ด์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ execCommand() ๋Š” ๋” ์ด์ƒ ์“ฐ์ง€ ์•Š์œผ๋ฉฐ ํ›จ์”ฌ ์‰ฝ๊ณ  ๊ฐ•๋ ฅํ•œ Clipboard API ๊ฐ€ ๋‚˜์™”์Šต๋‹ˆ๋‹ค. window.navigator.clipboard.writeText() ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด, ํ…์ŠคํŠธ๋ฅผ ํด๋ฆฝ๋ณด๋“œ์— ๋ณต์‚ฌํ•ด๋‘˜ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. โœจโœจ ์•„๋ž˜๋Š” ์ด๋ฅผ ์ด์šฉํ•˜์—ฌ ํ˜„์žฌ ํŽ˜์ด์ง€ URL์„ ๋ณต์‚ฌํ•˜๋Š” ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค. function handleUrlShare() { const currUrl = window.location.href; // ํ˜„์žฌ url navigator.clipboard.writeText(currUrl).then(() => { alert("๋งํฌ๋ฅผ ๋ณต์‚ฌํ•˜์˜€์Šต๋‹ˆ๋‹ค."); }); }