본문 바로가기

분류 전체보기

ROS2 Humble Hawksbill 설치 ROS2 Humble Hawksbill 설치하기 우분투 22.04 에 ROS2 Humble Hawksbill 설치하는 과정을 정리한다. 이 과정은 Windows11 22H2 (OS build 22621.1555) 에서 테스트 했다. WSL2 ROS2 Humble 설치하기 터미널에서 locale 을 확인한다. 만약 UTF-8 이 포함되어 있지 않을 경우, 다음의 명령어로 locale 을 재설정 한다. sudo apt update && sudo apt install locales sudo locale-gen ko_KR ko_KR.UTF-8 sudo update-locale LC_ALL=ko_KR.UTF-8 LANG=ko_KR.UTF-8 ROS2 Humble 설치를 위한 사전 작업 우분투 apt 패키지 시스템.. 더보기
WSL 에서 Ubuntu 22.04 설치하기 WSL 에서 Ubuntu 22.04 설치하기 윈도우 리눅스 WSL 환경에서 wsl import 명령어로 Ubuntu 22.04 설치하는 방법을 정리한다. 이 포스팅은 Windows11 22H2 (OS build 22621.1555) 에서 테스트 했다. WSL 우분투 설치하기 이곳 에서 Ubuntu2204-221101.Appxbundle 파일을 다운로드 한다. 반디집 등을 이용하여 Ubuntu2204-221101.Appxbundle 압축을 푼다. 반디집 등을 이용하여 Ubuntu_2204.1.7.0_x64 압축을 푼다. 설치 이미지 파일 install.tar 이 있는지 확인한다. 윈도우 터미널에서 다음의 명령어로 설치 한다. (C 드라이브 아니여도 상관 없음) wsl --import ubuntu-22.04.. 더보기
ROS2 완독 챌린지 Week1 (Ch.01~04) ROS2 완독 챌린지 Week1 2023년 4월 부터 12주 동안, "ROS2로 시작하는 로봇 프로그램"(표윤석, 임태훈 지음) 을 완독하는 챌린지 입니다. 1장. ROS2 소개 ROS 2는 로봇 개발을 위한 오픈 소스 툴킷으로, 이전 버전인 ROS와 달리 더 많은 기능과 개선된 성능을 제공합니다. ROS 2는 다양한 플랫폼을 지원하며, 로봇 개발자들이 시스템의 개발 및 관리를 쉽게 할 수 있도록 도와줍니다. 또한, ROS 2는 분산 시스템을 지원하며, 높은 신뢰성과 보안성을 제공합니다. ROS 는 Robot Operation System 의 약자 입니다. ROS 는 전통적인 운영체제가 아닙니다. ROS 는 메타 운영 체제라고 합니다. 기존 운영체제 위에서 동작하는 로봇 소프트웨어을 위한 미들웨어와 프레.. 더보기
WSL2 임포트로 우분투 20.04 설치하기 WSL2 임포트로 우분투 20.04 설치하기 (C 드라이브가 아닌) 원하는 위치에 WSL 우분투를 설치하는 방법을 정리한다. WSL2 우분투 설치하기 테스트환경 Windows11 버전 22H2 (OS 빌드 22621.1555) 설치에 앞서, 아래 사이트에서 Windows Linux 배포판을 다운로드 한다. https://docs.microsoft.com/ko-kr/windows/wsl/install-manual#downloading-distributions 이전 버전 WSL의 수동 설치 단계 wsl install 명령을 사용하지 않고 이전 버전의 Windows에 WSL을 수동으로 설치하는 방법에 대한 단계별 지침입니다. learn.microsoft.com Ubuntu 20.04 다운로드 (파일명 : Ca.. 더보기
mysql 테이블 생성 및 삭제 mysql 데이터베이스의 테이블 생성 및 삭제 윈도우 WSL 환경에서 mysql-server 를 설치 하고, 데이터베이스와 테이브를 만들고 지우는 과정을 기록한다. mysql 서비스 시작 윈도우 WSL 환경에서 mysql-server 를 설치 하였지만, 자동 실행이 안되서 명령어를 통해 mysql service 를 시작한다. 이렇게 안할경우, "Can't connect to local MySQL server" 오류가 발생하였다. $ sudo service mysql start mysql 데이터베이스 생성 및 삭제 mysql 을 사용하기 위해 mysql shell 환경으로 들어간다. $ sudo mysql -u root -p mysql shell 에서 testdb 이름의 데이터베이스 생성한다. mysql>.. 더보기
mysql 패스워드 정책 변경하기 mysql 패스워드 정책 변경하기 mysql 에서 새로운 사용자를 추가할 때 패스워드가 정책 요구사항에 맞지 않는다는 오류가 발생하였다. mysql 패스워드 정책 요구사항을 수정하는 방법을 기록한다. sudo mysql -u root -p mysql> CREATE user 'makepluscode'@'localhost' IDENTIFIED BY 'pass123'; ERROR 1819 (HY000): Your password does not satisfy the current policy requirements mysql 패스워드 정책 조회하기 mysql 프롬프트에서 패스워드 정책을 조회할 수 있다. mysql> show variables like 'validate_password%'; ERROR 4031.. 더보기
파이선 pycairo 에서 context 읽지 못하는 오류 파이선 pycairo 에서 context 읽지 못하는 오류 Cairo 는 오픈소스 2D 그래픽 라이브러리 이다. python 환경을 위해 pycairo 라는 패키지를 제공한다. cairo.Context 객체를 통해 간단한 그림을 그리거나, 글자를 작성할 수 있다. 테스트버전 Python 3.8.10 pycairo 1.23.0 libcairo-gobject2 1.16.0-4 Context 참조오류 cairo.Context 를 사용하기 위해서는 python3-gi-cairo 를 반드시 설치해야한다. 만약 python3-gi-cairo 가 설치되어 있지 않으면 다음과 같은 에러가 발생한다. File "main.py", line 57, in on_draw context.rectangle(900, 500, 120.. 더보기
Windows 11 WSL 기본 사용자 변경 Windows 11 WSL 기본 사용자 변경 Microsoft Windows 11 에서 Ubuntu-20.04 WSL 설치하면, 기본 사용자가 root 가 된다. 기본 사용자 root 에서 다른 사용자로 변경하는 방법을 정리한다. 테스트 환경 마이크로소프트 윈도우11 빌드 22621 에서 Ubuntu-20.04 WSL 를 설치하여 테스트하였다. $ systeminfo 호스트 이름: DESKTOP-ULCLBCG OS 이름: Microsoft Windows 11 Home OS 버전: 10.0.22621 N/A 빌드 22621 $ wsl --list --verbose NAME STATE VERSION * Ubuntu-20.04 Running 2 윈도우11 에서 Ubuntu-20.04 터미널에 들어가서 addu.. 더보기
Gstreamer Python : Appsink 구현하기 Gstreamer Python 으로 Appsink 구현하기 Gstreamer 응용프로그램 개발 시, Python 언어를 사용할 수 있도록 라이브러리를 제공해준다. makepluscode 의 이전 글에서 mp4 file 을 읽어서 pipeline 을 구현하는 코드를 정리하였다. 2023.02.02 - [프로그래밍/GLibㆍGTKㆍGstreamer] - Gstreamer Python : mp4 filesrc 예제 구현하기 Gstreamer Python : mp4 filesrc 예제 구현하기 Python 으로 mp4 filesrc 예제 구현하기 Gstreamer 응용프로그램을 개발할때 Python 언어를 사용할 수 있도록 PYTHON 바인딩을 제공한다. 많이 사용하는 기능인 mp4 file 을 읽어서 pipe.. 더보기
Gstreamer Python : videorate FPS 변경 하기 videorate FPS 변경 하기 Gstreamer 응용프로그램을 개발할때 Python 언어를 사용할 수 있도록 PYTHON 바인딩을 제공한다. makepluscode 의 이전 글에서 mp4 file 을 읽어서 pipeline 을 구성하는 예제를 정리하였다. 2023.02.02 - [프로그래밍/GLibㆍGTKㆍGstreamer] - Gstreamer Python : mp4 filesrc 예제 구현하기 Gstreamer Python : mp4 filesrc 예제 구현하기 Python 으로 mp4 filesrc 예제 구현하기 Gstreamer 응용프로그램을 개발할때 Python 언어를 사용할 수 있도록 PYTHON 바인딩을 제공한다. 많이 사용하는 기능인 mp4 file 을 읽어서 pipeline 을 구성.. 더보기
Gstreamer Python : mp4 filesrc 예제 구현하기 Python 으로 mp4 filesrc 예제 구현하기 Gstreamer 응용프로그램을 개발할때 Python 언어를 사용할 수 있도록 PYTHON 바인딩을 제공한다. 많이 사용하는 기능인 mp4 file 을 읽어서 pipeline 을 구성하는 예제를 구현하는 코드를 정리한다. gstreamer factory 파이프라인 예제 테스트 환경 Gstreamer 1.16.4 Python 3.8.10 gstreamer filesrc 구현하기 Gstreamer 의 ElementFactory 는 programming 을 통해 Gstreamer 플러그인을 load 하는 함수 이다. 아래의 코드는 filesrc, qtdemux, avdec_h264, h264parse, videoconvert, autovideosink 를 .. 더보기
Gstreamer Python : factory 파이프라인 구현하기 Python 으로 구현한 gstreamer factory 파이프라인 예제 Gstreamer 프레임워크에서 응용프로그램 개발 시, Python 언어를 사용할 수 있도록 Gstreamer -PYTHON binding 을 제공한다. plug-in 을 로드해서 파이프라인을 구성하는 예제 코드를 정리한다. gstreamer factory 파이프라인 예제 테스트 환경 Gstreamer 1.16.4 Python 3.8.10 gstreamer factory 파이프라인 프로그래밍 Gstreamer 의 ElementFactory 는 programming 을 통해 Gstreamer 플러그인을 load 하는 함수 이다. 아래의 코드는 videotestsrc 와 autovideosink 를 load 하고 하나의 pipeline.. 더보기
Gstreamer Python : pipeline 예제 Python 으로 Gstreamer pipeline 구현 예제 Gstreamer 프레임워크는 기본적으로는 C 언어로 프로그래밍 가능하다. 추가로 Python 언어를 사용할 수 있도록 GST-PYTHON 바인딩을 제공한다. 몇개의 예제를 통하여 python 으로 Gstreamer 를 사용하는 방법을 정리한다. Gstreamer pipeline 를 프로그래밍 해보자 예제실행환경 Python 3.8.10 Gstreamer 1.16.4 and plugins Gstreamer python 프로그래밍 리눅스 터미널에서 gst-launch-1.0 명령을 이용하여 gstreamer pipeline 을 실행할 수 있다. python 을 이용해서 gstreamer pipeline 을 실행하기 위해서 Gst.parse_la.. 더보기
WSL을 사용하여 Windows에 Linux 설치 WSL을 사용하여 Windows에 Linux 설치 WSL (Windows Subsystem for Linux) 는 마이크로소프트에서 제공하는 Linux 용 Window 하위 시스템이다. Window 에서 Linux 를 사용할 수 있는 기능이다. 초기 WSL 에서 호환성, 하드웨어 지원 등의 이슈가 많았다. 하지만 WSL2 로 발전되면서 많은 리눅스 개발자 들이 Windows 의 WSL 를 이용하게 되었다고 한다. 이 글에서 윈도우10에서 명령어를 통해 wsl (Version 2) 를 설치하는 방법을 정리한다. 전제조건 wsl 명령을 통해 Windows 에 Linux 를 설치하려면, Windows 10 버전 2004 이상(빌드 19041 이상) Windows 11 을 사용하고 있어야 한다. 설치 가능한 L.. 더보기
Ubuntu 20.04 Docker MMDetection 환경구성 Ubuntu 20.04 MMDetection 환경구성 mmdetection 는 open-mmlab 에서 개발한 computer vision 프레임워크 이다. 다양한 알고리즘 모델을 쉽게 사용할 수 있도록 미들웨어와 관련 도구를 제공한다. 이 글은 Ubuntu 20.04 에서 docker 를 이용하여 mmdetection 설치하고, 간단한 데모를 수행하는 과정을 설명한다. 테스트환경 Ubuntu 20.04.5 LTS NVIDIA GeForce RTX 3050 Ti Laptop GPU NVIDIA-SMI 515.86.01 사전작업 NVIDIA 그래픽 카드 드라이버 설치 도커를 이용하여 MMDet 을 설치하기 Docker 설치 우분투 20.04 Docker 설치는 makepluscode 의 이전 글을 참고한다.. 더보기
NVIDIA Dockerfile 빌드 시, GPG error MMdetection 도커 GPG error MMdetection 개발 환경 구성을 하는 과정에서 파이토치, CUDA, CUDNN 이 포함된 Docker 를 설치하였다. 이 Docker 를 설치하는 과정에서 GPG (GNU Privacy Cuard) 에러가 발생하여 수정하는 방법을 기록한다. NVIDIA Dockerfile 빌드 시, GPG error 테스트환경 Ubuntu 20.04.5 LTS NVIDIA GeForce RTX 3050 Ti Laptop GPU NVIDIA-SMI 515.86.01 Dockerfile 실행한 Dockerfile 은 다음과 같다. 이 file 을 통해 Docker 이미지를 받고, apt-get update 를 수행하였다. ARG PYTORCH="1.9.0" ARG CUDA.. 더보기