Skip to content총 43개의 글이 있습니다.
IoU(Intersection over Union)는 두 영역이 얼마나 겹치는지를 0~1 사이 값으로 나타내는 지표이다. object detection에서 예측 bbox와 정답 bbox의 일치도를 평가하는 데 쓰이고, 그 외에도 영역 기반 매칭이 필요한 곳에 범용적으로 쓰인다.
계산
IoU = 교집합 넓이 / 합집합 넓이
두 bbox A, B가 각각 `(x1, y1, x2, y2)` 형식일 때:
python
def iou(a, b):
교집합
ix1 = max(a[0], b[0])
iy1 = max(a[1], b[1])
ix2 = min(a[2], b[2])
iy2 = min(a[3], b[3])
inter = max(0, ix2 ix1 OpenCV의 `cv2.inpaint()` 함수는 이미지에서 손상된 영역이나 제거하고 싶은 객체를 주변 픽셀 정보를 이용해 자연스럽게 채우는 기법이다. 사진에서 스크래치를 제거하거나, 워터마크를 지우거나, 불필요한 객체를 없애는 데 사용된다.
python
import cv2
dst = cv2.inpaint(src, mask, inpaintRadius, flags)
result = cv2.inpaint(image, mask, 3, cv2.INPAINT_TELEA)
또는
result = cv2.inpaint(image, mask, 3, cv2.INPAINT_NS)
`src`: 입력 이미지
`mask`: 복원할 영역을 표시한 마스크 (흰색 픽셀이 복원 대상)
`inpaintRadius`: 복 선형회귀 : 최소제곱법
python
import tensorflow as tf
import matplotlib.pyplot as plt
import numpy as np
X = [0, 0.5, 1.0, 1.5, 2.0, 2.5]
Y = [0.3, 1.9, 2.4, 4.1, 6.8, 7.9]
x_mean = sum(X)/len(X)
y_mean = sum(Y)/len(Y)
division = sum((y-y_mean)*(x-x_mean) for y, x in list(zip(Y,X)))
divisor = sum((x-x_mean)2 for x in X)
a = division / divisor
b = y_mean a * x_mean
new_X = np.arange(0, 3, 0.05)
n python
import numpy as np
import tensorflow as tf
x = np.array([[0,0], [1,0], [1,1], [0,0], [0,0], [0,1]]) 바퀴, 날개
y = np.array([
[1,0,0], 배
[0,1,0], 자동차
[0,0,1], 비행기
[1,0,0],
[1,0,0],
[0,0,1]
])
model = tf.keras.Sequential()
model.add(tf.keras.layers.Dense(input_dim=2, units=10, activation='relu')) input_dim : 입력값 갯수
model.add(tf.keras.layers.Dense(units=5, activation='relu'