본문 바로가기

전체 글

(137)
openCV 프로그래밍 기초(직선, 사각형 그리기) openCV에서는 영상, 비디오에서 처리 결과를 표시하고 쉽게 확인할 수 있도록 다양한 모형을 삽입할 수 있다 그 여러 도형 작성 방법 중 직선과 사각형을 그리는 방법에 대해서 배워보았다 1. 라이브러리 임포트 import cv2 import numpy as np 2. 파일 경로 불러와 변수에 저장 img = cv2.imread('data/images/mark.jpg') 3. 이미지파일 열어서 원본확인 cv2.imshow('original',img) 4. 원본 이미지를 복사해서 변수에 저장 imageLine = img.copy() #생략가능한 코드인데 나는 이 사진을 가지고 여러번 실습할거라 혹시나 원본이 상하지 않도록! 5. 선그리기 작성 cv2.line(imageLine, (322,179), (400..
openCV 프로그래밍 기초(이미지 crop) 이번 포스팅에서는 openCV 라이브러리로 이미지파일을 crop해서 출력하는 방법을 배워보자 1. openCV 라이브러리 임포트 import cv2 2. 이미지파일이 저장된 경로를 변수에 불러와 저장 source = cv2.imread('data/images/sample.jpg',1) 3. 내가 원하는 부분의 이미지좌표를 불러온다 crop_img = source[50:150,20:200] #이미지도 결국 행,열로 구분되어 있기 때문에 그에 맞춰서 사이즈를 크롭해주어야 한다 #X,Y축을 구분한다고 [50:150],[20:200]으로 작성하면 정상출력은 되나, 완전 다른결과가 나온다 4. crop이 정상적으로 되었는지 확인해보자 cv2.imshow('Original',source) #원본파일 cv2.imsh..
openCV 프로그래밍 기초(resize) 이번엔 openCV 라이브러리를 활용해서 이미지crop, resize하는 방법을 공부해보자 1. openCV 라이브러리 임포트 import cv2 2. 이미지가 저장된 경로 불러오기 source = cv2.imread('data/images/sample.jpg',1) # 위 괄호의 1은 없어도 되거나, cv2.IMREAD_COLOR로 대체가능 3. 이미지를 resize할 크기를 지정한다 scaleX = 0.6 scaleY = 0.6 # 이미지파일 원본 크기를 1로 잡고 계산한다 # 가로,세로 자신이 원하는 사이즈를 각 변수에 지정하고 저장한다 4. resize할 이미지파일을 변수에 저장한다 ScaleDown = cv2.resize(source, None, fx=scaleX, fy=scaleY, inter..
openCV 프로그래밍 기초(이미지파일 읽고 쓰기) 지난시간 openCV 라이브러리를 활용하여 이미지(영상)파일을 열어보는 방법을 알아보았다 이번에는 이미지파일을 읽고 쓰는 방법을 알아보자 (참고) 나는 VScode에 streamlit 가상환경을 이용하여 활용하고 있다 1. 먼저 opencv 라이브러리를 임포트해준다. import cv2 2. 저장되어있는 이미지파일의 경로를 불러온다. imageName = 'data/images/sample.jpg' 3. 이미지파일을 변수에 저장하여 읽어준다. image = cv2.imread(imageName, 1) cv.2imread에 대한 레퍼런스는 이전 게시글에 간략하게 설명해놓았으니 참고! openCV 프로그래밍 기초(이미지 파일 열기) openCV(Open Source Computer Vision)이란 - 영상..
openCV 프로그래밍 기초(이미지 파일 열기) openCV(Open Source Computer Vision)이란 - 영상, 비디오처리, 컴퓨터 비전, 기계학습 등을 포함한 라이브러리로, 다양한 플랫폼에서 활용가능하다 파이썬을 통해 openCV를 활용할 것인데 이에 필요한 필수 프로그램과 라이브러리가 있다 - 파이썬 : VScode나 콘다, IDLE 사용하면되는데 주피터 노트북이나 코랩은 100% 작동하진 않는다 - numpy , Matplotlib, OpenCV 라이브러리 ############ 필수 설치 라이브러리################### pip install numpy pip install matplotlib pip install opencv-python openCV에 대한 레퍼런스나 관련 서적은 워낙 많이 나와있기에 잘 찾아보심 될 ..
실리콘맥 vs 인텔맥 나는 인텔맥과 실리콘맥 모두를 사용하는 유저다 애플이 애플실리콘개발을 선포하고 실제로 작년 m1칩셋이 들어간 맥북을 출시하면서 맥북이 과도기 시즌에 접어들게 되었다 그러다보니 애플에 입문하려는 사람들이 많은 고민들을 하게 되는거 같은데 내가 아는 선에서 간략하게 설명을 하고자 한다 m1 맥은 어디서 사는게 가장 좋은가요? 솔직하게 말하자면 쓸데없는 질문이다. m1 맥이 뭐 여러군데에서 생산하는것도 아니고 공급사는 애플 하나다. 다만 공식채널이냐 사설채널이냐 그 차이인데 그것도 별 차이 없다 나는 쿠팡에서 로켓배송으로 구매했는데 할인 1도 안받고 그냥 빨리 받는다는 조건으로 구매했다 아마 굳이 따지자면 아래 사항이지 않을까 싶다 1. 어차피 워낙 인기제품이라 할인은 꿈 자체를 안꾸는게 좋다. 2. 묻지마 ..
다사다난 군스토리 - 6(나는야 리모델링 전문가#2) 군스토리 4편을 포스팅해놓고 건강상의 이유로 2주넘게 블로그 포스팅을 쉬었더니 감이 떨어졌다 ㅎ 지난편에서 X고생하면서 결국 부대 역사관을 꾸역꾸역 만들어냈다는 스토리를 올렸었다 그 뒷스토리를 이어서 해보려 한다 역사관을 만들면서 여러 문제점이 있었는데 다른거 다 제껴놓는다쳐도 가장 크게 문제되는 사항이 하나 있었는데 그건 바로 '습기'였다.... 건물 자체가 몇십년동안 머금고 있는 습기는 물론, 건물이 산 중턱에 위치해있고, 산에서 내려오는 계곡과 인공적으로 만들어낸 배수로가 겹치는 곳이라 365일 습한 곳이어서 습도가 40% 이하로 절대 내려가질 않는다..... 그렇게 구조적문제를 해결하지 않고 공사를 강행한 결과..... 위 사진처럼 천장이 습기를 머금으면서 내려앉기 시작했다 ㅋㅋㅋㅋㅋㅋ 뭐 상급자..
Postman을 이용하여 API 생성하기 우리는 VScode와 MySQL을 통해 RDS(데이터베이스)를 연결하여 가상환경으로 정보를 CRUD하는 방법을 배웠다 다만 로컬호스트로 접근하여 개인이 가지고 있는 정보를 개인만 확인할 수 있는 일방적인 통로에 불과했다 개인만 정보를 가지고 있으면 공유도 불가능하고, 폐쇄적인 공간이기에 타인이 접근할 방법이 없다 API(Application Programming Interface)란 - 응용프로그램에서 사용할 수 있도록 프로그래밍 언어가 제공하는 기능을 제어할 수 있도록 만든 인터페이스 - API는 고객과 DB에 중간다리 역할로 고객이 원하는 정보를 암호화된 API 서버에서 DB를 불러와 관련정보를 되돌려주는 역할을 한다. 번거롭게 왜 중간다리를 놓느냐라고 하지만, 고객이 DB에 직접 들어가면 해킹, 자..