본문 바로가기
728x90
반응형

파이썬7

[시맨틱 세그멘테이션] 왕초보도 가능한 이미지 영역 분리하기 (python, pytorch) 자율주행차와 인공지능 자율주행차는 종합예술,미래 기술의 집약체라는 말을 종종하곤 합니다. 요즘 나오는 자율주행차를 보고 있으면 언제 이렇게 기술이 발전했나 싶을정도로 기술의 발전이 놀라운데요, 오늘은 그 일부인 시맨틱 세그멘테이션 기술을 소개합니다. 시맨틱 세그멘테이션은 말 그대로, 의미론적으로 나누는 것입니다. 사람은 사람 영역으로, 길은 길 영역으로 나누는 기술입니다. 코드는 아래의 pytorch 공식 홈페이지에서 가져왔으며, 아래 링크를 들어가면, 환경설치 없이도 간단하게 코드를 테스트해볼 수 있습니다. https://pytorch.org/hub/pytorch_vision_deeplabv3_resnet101/ PyTorch An open source machine learning framework .. 2022. 12. 12.
[파이썬] 인공지능(AI), 딥러닝 코드 필수 기초 문법 (2) - for 문, if 문 인공지능(AI), 딥러닝 코드에 자주 쓰이는 for 문과 if 문에 대해 알아보려고 한다. for문은 영어로는 "~동안" 이라는 뜻이고, if문은 영어로는 "만약에" 라는 뜻이다. 코딩에 사용될 때도 똑같은 의미로 사용된다. 본 포스팅에서 다룰 전체 코드는 다음과 같다. 아래 코드가 전부 다 이해가 간다면 본 포스팅을 패스해도 좋다. # itmes 이라는 이름으로 list 자료형의 변수 선언 itmes = [1,2,3,4,5,"Hello", "world", 6] # for문 1 for k in range(0, len(itmes)): #len(*)은 *의 전체 데이터 길이를 알려줌 print(k, itmes[k]) # for문 2 for k in itmes: print(k) a = 3 if a > 4: p.. 2022. 12. 7.
[파이썬] 인공지능(AI), 딥러닝 코드 필수 기초 문법 (1) - 변수 선언, 자료형, 함수 인공지능(AI), 딥러닝 코드를 이해하려면 몇가지 기초 문법을 알고 있어야 이해하기가 수월하다. 변수 선언, 자료형, 함수는 코드를 볼 때 필수적으로 마주하는 문법이다. 본 포스팅에서 살펴볼 전체 코드는 다음과 같다 아래 코드가 전부다 이해가 간다면 본 포스팅을 패스해도 좋다. # 변수선언 a = 1 # 정수로 선언 (integer) b = 1.0 # 실수로 선언 (float) c = "문자" # 문자로 선언 (string) d = [1,2,3] # 리스트로 선언(list) print(type(a), type(b), type(c)) #list 활용 d.append(4) # 리스트 마지막에 숫자 4 추가 d.append("테스트") # 리스트 마지막에 문자 "테스트" 추가 print(d) # 기본형태 {k.. 2022. 12. 6.
[영상처리] 파이썬으로 이미지 인코딩/디코딩, image to base 64, base 64 to image 로 변환하기 base64란? base64(베이스 육십사)란 8비트 이진 데이터를 문자 코드에 영향을 받지 않는 공통 ASCII 영역의 문자들로만 이루어진 일련의 문자열로 바꾸는 인코딩 방식을 가리키는 개념이다. -위키백과- 이미지 파일로 저장하기 어렵거나, 전송을 해야하거나 등등 다양한 이유에서 이미지를 문자열(base64)로 변환하여 사용한다. 이미지를 base64로 변환하고, base64를 다시 이미지로 변환하는 코드는 다음과 같다. import base64 import io import cv2 import numpy as np from PIL import Image # 이미지를 base64 변환 img_in = open('./input.png', 'rb') base64_str = base64.b64encode(.. 2022. 12. 5.
[영상처리] 파이썬에서 opencv의 cv2.imread/cv2.imwrite로 이미지 불러오고, 저장하기 파이썬에서 opencv를 사용하여 이미지를 불러오고, 저장하는 파이썬 코드를 공유합니다. opencv 는 다양한 함수들을 제공하고 있습니다. 매우 자주 쓰이는 코드입니다. 코드 설명은 주석을 참고해주세요. import cv2 img = cv2.imread('input.png') # 이미지 파일 불러오기 cv2.imwrite('output.png', img) # 이미지 파일 저장하기 cv2.imshow('input', img) # 이미지 보이기 cv2.waitKey(0) # ESC 누르면 종료 cv2.destroyAllWindows() # 이미지 보여주는 창 종료 2022. 12. 5.
[영상처리] 파이썬에서 opencv의 cv2.VideoCapture로 동영상 재생하기 파이썬에서 opencv를 사용하여 비디오를 재생하는 코드를 공유합니다. 매우 자주 쓰이는 코드입니다. 코드 설명은 주석을 참고해주세요. import cv2 cap = cv2.VideoCapture('video.mp4') # 비디오 파일 불러오기 while True: retval, frame = cap.read() # 비디오 프레임 하나씩 가져오기 cv2.imshow("show video, q를 누르면 종료됩니다", frame) # 프레임 보여주기 if cv2.waitKey(1) == ord("q"): # 사용자 입력 받기 'q' 입력 시 종료 break if frame is None: # 비디오 프레임 확인, 비어있으면 종료 break cap.release()# 객체 해제 cv2.destroyAllWin.. 2022. 12. 5.
[객체탐지] 왕초보도 가능한 인공지능/딥러닝으로 이미지에서 객체 탐지하기(파이썬, pytorch, YOLO v5) 성능이 정말 좋아서.. 이게 안쓸 수가 없잖아? 요즘에는 코드 한줄로 딥러닝을 불러올 수 있는 모델들이 많이 소개되고 있습니다. 오늘은 유명한 객체탐지 모델을 사용해보고자 합니다. 환경 설정없이 코드를 테스트해보고 싶다면, 아래 파이토치 공식 홈페이지에서 가능합니다. https://pytorch.org/hub/ultralytics_yolov5/ 불러오는 중입니다... 코드를 좀 살펴볼까요? YoloV5 를 이용하여 이미지 내의 사람을 탐지하는 코드입니다. 전체 코드는 20줄이며, 실제로 딥러닝을 실행하는 코드는 아래의 단 3줄입니다. 실행방법은 2단계 입니다. 1. frame = cv2.imread('공원.png') : 이 부분의 이미지를 자신이 원하는 이미지로 변경합니다. 2. 실행, 끝! 자세한 코드.. 2022. 12. 2.
728x90
반응형