전체 글 504

[인공지능 기초수학] 평균변화율 1

안녕하세요. 인공지능을 하기 위해서 수학기초가 필요합니다. 그래서 길벗에서 나온 책(모두의 인공지능 기초 수학)을 따라 해보며 확인 겸 정리해 보았습니다. 1. 평균변화율 미분은 변화율을 구하는 것으로 x가 변하는 양에 대해 y가 얼마나 변하는지 구하는 변화율로 평균변화율과 순간변화율이 있습니다. 1) 순간변화율 : 순간의 찰나의 변화에 대한 변화율을 구하는 것을 미분이라고 하고, 그 찰나의 변화율을 순간변화율 혹은 미분 계수라고 합니다. 2) 평균변화율 : 함수 y = f(x)가 있을 때 (y의 증가량 = ∆y) / (x의 증가량 = ∆x)을 의미 (예로 x가 2에서 9까지 증가했다면 평균변화율은 ∆x = 9 - 2 = 7 이 됩니다 x가 a에서 b로 변할 때 일반화하면 아래와 같습니다. 다른 방식으로..

Programming/Python 2023.10.30

[e4ds] Quest2 - YOLOv8를 이용한 아몬드(Almond)인식 및 카운팅

안녕하세요. e4ds에서 진행한 YOLOv8 프로젝트 두 번째 Quest를 진행해 보았습니다. 조금 열심히 해서 여러 기능을 넣어 보려고 했는데, 그렇게 까지는 못하고 전반적으로 접해보고, 기능을 추가하는 것으로 마무리하였습니다. AI 기능이 발전하는 것은 좋은데 새로운 것이 나오면 개발환경이 바뀌다 보니 기존에 개발하던 소스들이 작동하지 않는 경우가 많아서 조금 아쉬운 부분이 있었습니다. 1. 프로그램 설명 - Custom Data Set을 만들어 컨베이어 벨트처럼 지나가는 물체를 카운트하는 프로그램 - 현재는 아몬드(Almond)를 YOLOv8의 학습데이터로 삼아 Object Detection을 수행 - 프로그램 소스를 간단하게 하기 위해서 Supervision 라이브러리를 사용과 Tracker 성능..

[git] Windows의 git bash에서 wget 사용하기

안녕하세요. Windows 상에서 git을 이용하다 보면 간단한 리눅스 명령어는 되는데, 조금 특별한 명령어는 포함돼있지 않는 것을 알 수 있습니다. 이번에는 자료를 다운로드할 수 있는 wget 명령어가 없어서 사용하는 방법을 찾아보았습니다. 1. wget이 없을 때 메시지 - Git bash를 원하는 폴더에서 실행하면 아래와 같이 나오고 wget이라고 입력하면 명령어를 찾을 수 없다고 나옵니다. 2. Windows용 wget 다운로드하기 - 무료로 배포하고 있어 감사히 사용할 수 있습니다. 그리고 소스도 공개되어 있어 구조도 분석 한번 할 수 있습니다. 단, 잠재적인 위험도 있을 수 있다고 경고하고 있습니다 - OS에 맞는 형식과 ZIP, EXE 버전을 선택해서 다운로드합니다. 여기서는 x64비트용 E..

Programming 2023.10.20

[Jetson Nano] Jetson Nano에 OpenCV 빌드 및 설치 확인해 보기

안녕하세요. Jetson Nano에서 영상처리를 하는 소프트웨어를 테스트해 보기 위해서 먼저 OpenCV를 설치를 해보았습니다. 어려운 것은 아닌데, 빌드하는 시간이 조금 오래 걸립니다. 그래도 영상처리 프로그램 테스트를 위해서 소스버전으로 설치를 진행해 보았습니다. 1. Jetson Nano에 OS(Ubuntu 18.04) 설치 - Jetson Nano를 사용하기 위해서 SD Card에 Ubuntu를 설치해주어야 합니다. 그 내용은 NVIDIA 사이트를 참고하시면 스텝별로 따라 할 수 있습니다. https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit#intro Get Started With Jetson Nano Develop..

Embedded 2023.10.18

[Logitech ERGO K860 키보드 스킨(oran well) 사용후기

안녕하세요. 이전 글에서 K860 키보드 사용후기를 올려보았습니다. 키보드 치고는 가격이 있다 보니 조금 보험 개념과 오래 사용할 수는 없을까 라는 생각에 키보드 키스킨을 구매해 보았습니다. 몇 가지 제품이 있었는데 처음 사용해 보다 느낌이 어떨까 하는 생각에 가성비 제품을 찾아 보았습니다. 광고가 아닌 한 개의 제품에 대한 사용후기이니 대략 이런 느낌이구나 읽어보면 좋지 않을까 합니다. 1. 제품 설명 - 사이트에 특별한 설명이 없고 기능만 적혀 있어서 특별한 스펙이라는 것은 없었습니다. 기존에 판매되고 있는 비슷한 실리콘 재질이라고 생각됩니다. - 기능은 액체/먼지 방지효과, 자판 소음 방지효과, 내구성 향상 효과가 있다고 설명하고 있습니다. - 외형은 키패드 부분에 맞게 되어 있고 키보드 전체를 감..

[Jetson Nano] docker에 MQTT(mosqitto) 설치해서 외부에서 작동확인 해보기

안녕하세요. Jetson Nano 테스트 요청받은 것이 있어서 간단하게 docker로 MQTT를 설치해서 broker 서버로 가능한지 테스트해 보는 것으로 하였습니다. 간단하게 가능하구나 확인 삼아 보시면 도움이 될 것으로 생각됩니다. 사전작업으로 Jetson Nano에 Ub 1. 프로그램 설치 - 기본적으로 Jetson Nano에 Ubuntu 18.04 버전이 설치되어 있고, apt update와 apt upgrade를 했다는 전제하에 추가 진행사항이라고 보시면 됩니다. - 위의 내용 진행되었다면 docker 기본버전이 같이 설치되어 있습니다. 이제 간단하게 컨테이너 하나를 생성합니다. - 컨테이너 하나를 생성할 때 옵션에 ubuntu20.04 버전을 기본 OS로 하고 외부와 통신할 수 있도록 포트를 ..

Embedded 2023.10.09

[Unity] 유니티 실행 프로그램을 확장된 화면에 출력하기(특히, 노트북 확장 모니터에 출력하기)

안녕하세요. 프로그램 개발하는 분이라면 보통 모니터 2개 이상을 사용하고 있을 겁니다. 그런데 유니티로 프로그램을 만들고 실행시켜 보면 현재 실행 시는 모니터에만 계속 프로그램이 나타나는 것을 볼 수 있습니다. 데스크톱 PC일 경우 그래픽카드의 모니터를 물리적으로 바꾼다던지 하면 되는데 메인 화면을 노트북으로 하는 경우 노트북 모니터가 1번으로 1번으로 되어서 계속 노트북화면에만 나타나게 됩니다. 완벽한 방법은 아닌 것 같은데 다른 화면을 다른 화면에 나타나게 할 수 있는 방법을 확인해 보겠습니다. 1. 카메라 설정하기 - Hierarchy에서 Main Camera를 선택하고, Target Display를 ComboBox를 선택하면 Display1~8까지 나옵니다. 여기서 노트북으로 출력하려는 모니터를 ..

Programming/Unity 2023.10.07

[Logitech ERGO K860 사용후기(MS 인체공학 키보드 비교)

안녕하세요. 집에서 MS Sculpt Ergonomic Desktop 키보드를 사용하고 있는데 집에서도 개발을 코딩을 조금 하려고 하다 보니, 기존의 큰 키보드에 비해 숫자키도 작게 느껴지고 특히 펑션키 경우 변환 스위치가 슬라이드 스위치로 되어 있다 보니 소리 줄이고 할 때마다 너무 불편했습니다. 왜 이렇게 만들었지 생각할 정도입니다. 개발자가 사용하기보다는 일반인이 F9~12까지 잘 사용 안 한다고 생각한 듯합니다. 이번에 MS 말고 다른 인체 공학키보드를 사용해 보자고 해서 사용후기가 괜찮은 키보드를 구입했습니다. 1. ERGO K860 Spec - 인터넷에 많이 있어서 간단하게 볼 수 있게만 가져왔습니다. - Dimensions Height: 9.17 in (233 mm) Width: 17.95 ..

[e4ds] Quest1 - 물체 인식 및 카운트하기

안녕하세요. 이번에 E4DS에서 YoloV8을 사용한 contest가 있어 Quest에 참여해 보았습니다. 어려운 무언가를 만드는 것이 아니라, 사용방법을 익히는 관점에서 진행하는 듯합니다. 그래서 Quest1은 YoloV8로 무엇을 만들어 볼 것인가, 기획하는 것으로 진행하였습니다. 그래서 간단하게 물건을 인식하고 카운트하는 것으로 기획해 보았습니다. 다른 분들도 이런 기능이 되는구나 참여해 보고 참고하는 기회가 되셨으면 합니다. □ YOLO를 활용한 어떤 문제나 응용 분야에 대한 아이디어 제안 - 공장 자동화를 따라 해 볼 수 있는 객체를 인지해서 물건을 인지하고 개수 파악과 몇 개가 들어오고 나가는지를 확인하는 것을 만들어 보려고 한다 - 정확한 Object는 정하지 않았지만, Pre-trained..

Programming 2023.10.01

[영상처리] 영상 화소(포인터) 처리

1. 영상 화소(포인터) 처리 란 - 입력 영상 화소(Pixel)에 포인터 연산자(Point Operator)에 따라서 출력 영상 화소(Pixel) 값이 결정되는 영상 - 입력영상 + (Point Operator) -> 출력영상 - Point Operator 예) 산술 연산자(+, -, *, /) 2. 영상 화소(포인터) 구현 예제 - D1 : 임의의 상수값 (예 : 밝기값 0~255) 1) 덧셈연산 : Out_image[i][j] = In_image[i][j] + D1; 2) 뺄셈연산 : Out_image[i][j] = In_image[i][j] - D1; 3) 곱셈연산 : Out_image[i][j] = In_image[i][j] * D1; 4) 나눗셈연산 : Out_image[i][j] = In_i..

[Python] OMP: Error #15: Initializing libiomp5md.dll ... 에러 해결하기

안녕하세요. 개발환경 PyCharm에서 Python 소스로 Yolo 테스트하기 위해서 코딩을 했습니다. 그런데 잠깐 창만 나타났다가 에러 나면서 종료가 되었습니다. 참고 사이트에서 말한 것 처럼 각종 라이브러리를 설치하고 해서 그런 것 같기도 한데 가상환경을 생성해서 하는데도 에러가 발생을 하네요. 1. 오류 내용 OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized. OMP: Hint This means that multiple copies of the OpenMP runtime have been linked into the program. That is dangerous, since it can..

Programming 2023.09.26

[Stock English Word] 23.09.14 Shut your engines

1. 단어 학습 * negotiation [nɪ│ɡoʊʃi│eɪʃn] : 두 개 이상의 당사자 간에 합의나 협상을 진행하는 과정 The negotiations between the labor union and the company management were intense. 노동조합과 회사 경영 간의 협상은 치열했습니다. Successful negotiations often require compromise from both sides. 성공적인 협상은 종종 양쪽 모두의 타협을 필요로 합니다. * tensions [ˈtenʃn] : 긴장, 갈등, 압력 The political tensions between the two countries have been escalating. 두 나라 간의 정치적 긴장이..

English Study/News 2023.09.25

[독서후기] 나폴레온 힐의 라이프 체인징 시크릿 1 생각의 힘

1. 책 선택 이유 나폴레온 힐의 자기 계발서를 몇 권 보았는데, 도움이 되기도 했고, 최근 들어 게을러지고 있다는 생각이 들어서 다시 한번 도움이 필요할 것 같아서 읽어보았습니다. 그리고 이것과 별개로 영어 공부도 다시 할 겸 영어 책도 구매했습니다. 2. 간략한 내용 소개 라이프 체인징 시크릿 시리즈. 론다 번의 시크릿과 같은 책이 생각으로 우리의 삶이 바뀔 수 있다고 성공한 사람들이 이야기하고, 여러 가지 성공 방법을 소개하는 자기 계발서들이 앞다투어 출간되기 이전에, 여기 세 명의 저자도 우리의 가장 내면적인 욕구를 현실로 바꾸어 놓으려는 방법을 제시한 적이 있었다. 이 세 명의 저자들이 삶을 지배하는 방법에 대해 저술한 고전적 저서들은 세대를 이어가면서 독자들이 성취를 위한 삶의 모든 부분에서 ..

Book Report 2023.09.24

[팝송으로 영어공부(153)] Let It Be Me - Elvis Presley

1. 노래 제목 : Let It Be Me 2. 가 수 : Elvis Presley 3. 노래 듣기 (Youtube) 4. 핵심표현 * let it be me : it는 사랑하는 사람을 말한다는 걸 의미함. Please don't let it be me. 나를 그냥 내 버려두지 말아 주세요. So let it be with me. 나와 함께 해주세요. * God bless : 축복하다/ 저주하다 God bless you all, God have mercy on us all, and God bless our country. 하나님의 은총이 모두에게 함께 하기를 바라고, 하나님의 가호가 우리의 나라에 함께 하기를 바랍니다. * cling [kliŋ] : 매달리다, 집착하다, 고수하다, ~에 착 들러붙다, 집..

Windows에 OpenCV 빌드하기

안녕하세요. 유니티에서 OpenCV를 사용해 보기 위해서 먼저 OpenCV 라이브러리를 설치가 필요했습니다. 유니티에서 유니티 플러그인 형태로 만들어서 사용할 수 있다고 해서 한번 따라 해보려고 했습니다. 굳이 유니티가 아니더라도 C#, Qt 등 윈도우 프로그램 툴에서 사용해 보려면 별도로 설치가 필요합니다. 윈도우 같은 경우는 설치파일이 있어서 간단하게 설치할 수 있습니다. OpenCV 사이트에 가서 버전을 확인 후 Windows 메뉴 링크로 다운로드하면 소스 빌드 없이 쉽게 설치할 수 있습니다. https://opencv.org/releases/ Releases Become a Member Stay up to date on OpenCV and Computer Vision news Join our Ne..

Programming 2023.09.20

[Stock English Word] 23.09.13 Inflation check

1. 단어 학습 * Bolster : 지원하다, 강화하다, 긴 베개 발음: [bóulstər] Regular exercise can help bolster your immune system. (정기적인 운동은 당신의 면역 체계를 강화하는 데 도움이 될 수 있습니다.) The company is taking steps to bolster its cybersecurity measures. (그 회사는 사이버 보안 조치를 강화하기 위한 조치를 취하고 있습니다.) * Hesitant : 주저하는, 망설이는, 우유 부단한 발음: [hézətənt] She was hesitant to accept the new job offer. (그녀는 새로운 직장 제안을 받아들이기 주저했습니다.) He seemed hesita..

English Study/News 2023.09.17

[팝송으로 영어공부(152)] Let It Be - The Beatles

1. 노래 제목 : Let It Be 2. 가 수 : The Beatles 3. 노래 듣기 (Youtube) 4. 핵심표현 * Let it be : 하세요, 말하자면, 두다 놔두다, (본문에서는 -한 상태로 두라는 의미이다) Just let it be. 그냥 놔두면 곧 알게 될 거야. Just let it be over. 제발 끝을 내줘. * find : 찾다, 발견하다란 뜻 외에 경험에서 알게 되다. find - found - found I can't find my keys. 열쇠를 찾지 못하겠어. Researchers looked for bacteria DNA and found a total of 1,200 species. 연구원들은 박테리아 DNA를 찾았고, 총 1,200종의 세균을 찾아내었다. *..

[Stock English Word] 23.09.12 Game of monopoly

1. 단어 학습 * Antitrust : 경쟁 제한 금지, 독점 금지 발음기호: [æˌntaitrəˈst] 예제 문장 : The government filed an antitrust lawsuit against the company for monopolistic practices. (정부는 독과점적인 행위로 회사에 반독점 소송을 제기했습니다.) Antitrust laws are in place to promote fair competition in the marketplace. (반독점 법은 시장에서 공정한 경쟁을 촉진하기 위해 마련되어 있습니다.) * Dominance : 지배, 우위 발음기호: [dάmənəns] 예제 문장 : Their dominance in the tech industry is u..

English Study/News 2023.09.14

[Stock English Word] 23.09.11 The Week Ahead

1. 영어 단어 * Vigilant (형용사) : 주의 깊고 경계하는, 경계하는 - 발음기호: /ˈvɪdʒ.ɪ.lənt/ - 예제 문장: - He remained vigilant throughout the night to protect the camp from wild animals. (그는 야생 동물로부터 야영지를 보호하기 위해 밤새도록 경계를 지켰다.) - It's important to stay vigilant while walking alone in unfamiliar neighborhoods. (익숙하지 않은 동네에서 혼자 걸어 다니는 동안 경계해야 합니다.) * Terminal rate (명사구) : 최종 금리, 종료 금리 - 발음기호: /ˈtɜːr·mɪ·nəl reɪt/ - 예제 문장: - ..

English Study/News 2023.09.12

[팝송으로 영어공부(151)] Lemon Tree - Fool's Garden

1. 노래 제목 : Lemon Tree 2. 가 수 : Fool's Garden 3. 노래 듣기 (Youtube) 4. 핵심표현 * hang around : 방황하다, 어슬렁거리다. I used to hang around with them. 나는 그들과 어울려 다니곤 했다. Can you hang around for a minute? 잠시 좀 기다려 줄래요? A dog was observed to hand around her house. 개 한 마리가 그녀의 집 부근을 맴돌고 있는 것으로 보인다. * wonder [wΛndər] : 궁금하다, 이상한, 놀라다, 경이로운, 의심하다 She wondered at his not coming sooner. 그가 좀 더 빨리 오지 않아서 그녀는 기이하게 생각했다...