컴퓨터 비전 6

[CV - Python] Gaussian Filtering

코드가 다소 부정확 할 수 있습니다. import cv2 import numpy as np def gaussian_distribution(sigma = 1) -> np.array: x, y = np.meshgrid(np.arange(-4, 5), np.arange(-4, 5)) z = np.exp(-((np.square(x) / (2 * np.square(sigma)) + (np.square(y) / (2 * np.square(sigma)))))) / (2 * np.pi * sigma * sigma) z = np.sum(z, axis = 1) / 2 return z img = cv2.imread('Lenna.png', cv2.IMREAD_GRAYSCALE) img = cv2.resize(img, (500..

[CV - python] 2D Partial Derivative for Edge Detection (엣지 검출을 위한 2차원 편미분)

코드가 궁금하다면 댓글을 남겨주세요. import numpy as np import cv2 img = cv2.imread('test4.jpg', cv2.IMREAD_GRAYSCALE) img = cv2.resize(img, (400, 600)) new_x = np.zeros(img.shape) new_y = np.zeros(img.shape) img = np.pad(img, (1, 1), 'constant', constant_values = 0) mask_x = np.array([[-1, 0, 1], [-2, 0, 2], [-1, 0, 1]]) mask_y = np.array([[1, 2, 1], [0, 0, 0], [-1, -2, -1]]) for i in range(1, img.shape[0] - m..

[머신러닝 - 이론] Computer Vision의 연구 분야와 대표적인 모델 - Classification, Object Detection (Computer Vision Research Fields and Representative Models - Classification, Object Detection)

1. Classification 말 그대로 해당 Image Object가 어떤 물체인지 분류하는 작업입니다. 대표적인 모델로는 EfficientNet이 있습니다. EfficientNet의 점수이며, 상대적으로 파라미터가 적음에도 불구하고 높은 정확도를 보이고 있습니다. EfficientNet의 구조는 다음과 같습니다. a를 보면 기본적인 모델의 구조입니다. 이때 EfficientNet은 다양한 테스트를 해봤는데, 기본적으로 채널 수를 더욱 늘려도 보았고, 깊이도 더 깊이 해봤고, 해상도도 변경했었습니다. 마지막으로 모두 혼합해서 테스트도 했습니다. 다양한 테스트 이후 좋은 구조를 합친 것이 바로 EfficientNet입니다. 가장 중요한 것은 결과가 아니라 과정에서 이 사람들이 왜 이런 생각을 했을까? ..

[머신러닝 - 이론] Computer Vision

1. Computer Vision이란? AI의 한 분야이고, 이미지, 비디오 혹은 visual input에서 의미 있는 정보를 추출하는 분야입니다. 또한 해당 정보에 기반해서 행동을 취하거나 추천을 하는 등의 분야입니다. 이 분야의 목적은 NLP와 비슷하게 컴퓨터에게 이미지를 이해시키는 것이 목적이며, 정보와 insight를 정확하게 추출하는 것이 목적입니다. 이때 이미지는 NLP와 다르게 매우 다양하며, VR, 적외선 레이더 등 매우 많은 이미지가 있습니다. 이때 이미지에서 현재 상황을 보거나, 어디에 무엇이 있는지, 어떤 행동이 일어나고 있는지, 어떤 행동을 예상하는지, 어떤 일이 발생할지에 대해 discover합니다. Computer Vision이 영향을 끼칠 수 있는 분야는 매우 많습니다. 기본적..

[머신러닝 - 이론] NLP + Computer Vision

1. Common NLP Tasks (Mixed tasks (NLP + Computer Vision)) 일반적인 자연어 처리와 컴퓨터 비전을 합한 작업으로는 Text-Image search (retrieval) 텍스트가 왔을 때 이미지를 보여주거나, 이미지를 보여주면 텍스트를 매칭 시켜줌 이는 이미 존재한 것을 매칭 시키는 것 Image/video captioning 새로운 이미지에 자막 등 텍스트를 달아줌 Etc.. 이 있습니다. 이는 곧 이미지나 비디오를 해석해서 사람이 이해할 수 있는 언어로 표현하는 것입니다. 이때 중요한 두 가지 문제가 있습니다. 영상을 머신이 이해하는 것 그런 이해를 Natural Language로 표현하는 것 애초에 영상을 머신에게 이해시키는 것도 어려운데, 그런 이해를 NL..

[머신러닝 - 이론] 합성곱 신경망과 컴퓨터 비전 (CNN : Convolution Neural Network, Conputer Vision)

1. CNN의 시작 컴퓨터 비전은 인공지능의 가장 중요한 연구 분야 중 하나입니다. 시각은 인간의 가장 강력한 인지 기능이고, 컴퓨터 비전은 인간의 시각 기능을 모방합니다. 그렇다면 인간의 시각 기능이 어떻게 작동하는지를 먼저 알아야 합니다. 여러분들은 지금 이 글에 집중하고 계실 겁니다. 그러면 옆에 있는 침대, 책상, 책들도 보이실 텐데 흐릿하죠. 결국 시각은 집중하고 있는 field에만 명확히 인식할 수 있습니다. 실제로 시각 피질 안에 많은 뉴런들이 있는데, 어떤 뉴런은 수평선의 이미지에만, 어떤 뉴런은 수직선의 이미지, 또 다른 애는 다른 각도의 선분에만 반응합니다. 또 어떤 뉴런은 큰 수용장을 가져서 더 복잡한 패턴에 반응합니다. 즉 결론적으로 뉴런들은 각기 집중하는 field가 있고, 이 f..