컴퓨터하는 상어
-
몽골 남부 7박8일 여행 후기 및 꿀팁 준비물일상 잡담 2023. 7. 5. 02:16
몽골 여행 다녀온 후기를 간략히 남겨봅니다. [0일차 - 인천공항] 금요일, 비척비척 출근을 하고 신나게 퇴근한다음 캐리어를 들고 공항으로 향했다. 비행기는 토요일 1시 비행기. 글쓴이, 지인2, 몽골러브 카페에서 구한 동행 3, 총 6명이서 가는 단체여행. 인천공항에서 일행들과 한컷 너무 졸려서 바로 잠들었는데 갑자기 비행기 불이 다 켜지면서 식사를 받았다. 몽골은 러시아 문화를 많이 들여왔는데, 역시나 초코파이가 엄청난 인기를 끌고있다고 한다. 기내식에도 초코파이, 심지어 바나나맛, 반쯤 조느라 밥 호일도 안벗기고 찍음. [1일차 - 울란바토르공항 → 차강소브리가] 밥먹고나니 바로 도착해버린 몽골 울란바토르 공항. 이번 여행의 이동수단으로 푸르공을 선택했는데, 역시나 깜찍한 비주얼로 우릴 맞아줬다. ..
-
수소(Hydrogen)의 생성 방법에 따른 종류도메인 공부 2023. 7. 4. 23:01
수소(水素, Hydrogen)는 화학원소로써 친환경 에너지원으로써 떠오르는 항목중 하나이다. 왜 친환경 에너지원으로써 떠오르고, 전기와의 차이점은 무엇인지는 다른 포스팅에서 다루겠다. 해당 포스팅에서는 수소의 생성 방식에 따른 종류에 대해 자세히 알아본다. 1. 수소의 생성 방식에 따른 종류 구분 수소는 석탄 등과는 다르게 자연에서 그대로 수집할 수 있는 자원이 아닌, 2차 가공을 통해 얻을 수 있는 자원이다. 이렇기 때문에 수소의 생성 방식에 따라서 그레이 / 블루 / 그린 수소로 구분 지을 수 있다. 얼핏 들어도 그레이 수소와 그린 수소는 차이가 많이 날 것 같은데, 아래에서 하나씩 살펴보겠다. 2. 그레이 수소(Grey Hydrogen) 그레이 수소는 화학연료로 부터 생산되는 수소를 나타낸다. 대표..
-
[opencv/python] 동영상 읽어와서 처리 후 다시 동영상으로 만들기Data Science/컴퓨터비전 2023. 6. 18. 19:22
동영상을 기반으로한 프로젝트들을 하다보면, 결과에 대해서 표현해 주어야하는 경우가 생긴다. 해당 포스팅에서는 이에 대한 내용을 간략히 정리해본다. 1. 동영상 프레임(이미지) 단위로 불러오기 cap = cv2.VideoCapture("동영상 주소") if cap.isOpened(): ret, img = cap.read() while ret: ret, img = cap.read() if not ret: break ## 이미지 처리 부분 # ~~ 2. 미사용 프레임에 대해서 생략하기 특정 프레임을 스킵하고 싶다면 아래의 명령어로 cap.read 보다 빠르게 스킵 가능하다 cap.grab() 3. 이미지 처리하기 예측모델의 동작이나 전/후처리 가 여기에 해당할 수 있다. 해당 포스팅에서는 모델부분은 다루지 않..
-
[여행] 보조배터리 비행기 반입 제한, Wh 계산(mAh, V)기타 2023. 5. 31. 23:14
비행기에 보조배터리를 반입하기 위해서 제한 사항을 살펴보면 아래와 같다. 기내수하물 1인당 2개 160Wh 이하(2개를 들고있다면 2개의 합이 160Wh 이하여야함) ※ 100Wh 이하일시 항공사 별도 승인 불필요 ※ 100Wh ~ 160Wh일 경우 항공사 승인 필요 위탁수하물 불가 그러나 보조배터리를 살펴보면 적혀있는 것이라고는 정격용량이라면서 V(vdc, Volts of direct current)와 mAh만이 적혀있다. Wh는 아래와 같은 식으로 구할 수 있다. Wh = V * mAh / 1000 얼마전 컨퍼런스에서 선물받은 나의 보조배터리는 3.7 V에 5000 mAh 이므로, 18.5 Wh 라고 할 수 있다.
-
[python, opencv] 판별된 오브젝트가 특정 영역 내부에 있는지 판단하기(다각형 폴리곤을 이용한 마스크 만들기, 작업구역 탐지, 위험구역 탐지)Data Science/컴퓨터비전 2023. 5. 30. 19:25
다양한 모양의 작업구역 등을 설정하고 이에 탐지된 오브젝트가 구역내 소속되어 있는지 판단하는 방법을 고민하던 중 폴리곤으로 mask를 만들고 and 연산을 하면 간단하다고 하여 이를 작성해본다. 실제 이미지 및 오브젝트 검출 부분까지 글에 가져오면 너무 분량이 많아져서, 검출된 오브젝트의 좌표값이 있다고 가정하고 간단한 예시로 진행하겠다. 1. 이미지 120*100짜리 이미지가 있다고 가정한다. img_mask = np.zeros((100,120,1),dtype=np.uint8) plt.imshow(img_mask) 2. 특정 영역 마스크 구역 생성(작업구역, 위험구역 등) 작업구역과 같이 사용자가 지정하고싶은 특정 구역을 나타내는 마스크를 만들어준다. 여러개의 다각형으로 다양한 구역을 표현 가능하다. ..
-
[Python, opencv] 다각형 그리기 코드 구현(cv2.polylines)Data Science/컴퓨터비전 2023. 5. 30. 18:56
파이썬에서 다각형을 그리기 위해서는 opencv를 활용하여 아래와 같이 그릴 수 있다. import cv2 import numpy as np # 0으로 채워진 이미지(array) 생성 image = np.zeros((150,150,3),np.uint8) # 다각형의 좌표를 순서대로 입력, 입력 순서대로 선을 그리게 된다 pts1 = np.array([[20,20],[130,70],[90,90],[80,130]],dtype=np.int32) # cv2의 polylines로 다각형 그리기 # cv2.polylines(원본그림, 좌표리스트, 마지막점과 첫점 연결 여부, 선색, 선 굵기) cv2.polylines(image,[pts1],True,(255,255,255),4) plt.imshow(image) 세번..
-
'OneHotEncoder' object has no attribute 'get_feature_names'프로그래밍/에러 처리 2023. 5. 11. 22:26
sklearn의 버전이 올라감에 따라서 sklearn의 Encoder의 "get_feature_names" 매서드가 동작하지 않는다. 이는 동일한 기능의 매서드의 이름이 바뀌어서 그렇다. 변경된 매서드는 "get_feature_names_out"이다. # 기존의 명령어를 encoder.get_feature_names() # 이렇게 변경해주면 된다. encoder.get_feature_names_out() 공식문헌은 아래와 같다. https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.OneHotEncoder.html#sklearn.preprocessing.OneHotEncoder.get_feature_names_out sklearn..
-
편상관계수 정의 및 파이썬 코드 구현(Partial Correlation Coefficient)Data Science/데이터마이닝 2023. 5. 7. 22:31
데이터 분석에 있어서 가장 많이 활용되는 기법 중 하나로 상관관계 분석이 있다. 그러나 실제 현업의 데이터에서는 여러 독립변수들이 직/간접적으로 영향을 미치며 이에 대한 정확한 상관관계/인과관계의 분석이 어렵다. 그렇기에 단순히 상관관계만을 보고 분석을 하는것은 한계가 있으며, 같이 활용 될 수 있는 편상관계수를 설명하고, 파이썬 코드로 구현하는 예시를 작성해본다. 1. 상관계수의 정의 및 한계(Correlation Coefficient) 상관계수는 두 변수간의 상호관계정도를 나타내는 통계적 수치이다. -1 ~ +1 사이의 값을 가지며, -1일때 완벽한 음의 상관관계 그리고 +1일때 완벽한 양의 상관관계를 나타낸다. 주의할 점은 상관계수가 0일 경우 상관관계가 0인 것이 아닌, 선형의 상관관계가 보이지 ..