RUVIDEO
Поделитесь видео 🙏

Python - OpenCV: Template Matching - Normalized Cross Correlation (NCC ZNCC) смотреть онлайн

#python #opencv #ncc #zncc

Python - OpenCV: Template Matching - Normalized Cross Correlation (NCC ZNCC)

00:00 pip install opencv-python
03:00 ZNCC
04:00 NCC

https://www.geeksforgeeks.org/template-matching-using-opencv-in-python/

# -*- coding: utf-8 -*-
import cv2
import numpy as np


def template_matching_ncc(src, temp):
# 画像の高さ・幅を取得
h, w = src.shape
ht, wt = temp.shape

# スコア格納用の2次元リスト
score = np.empty((h-ht, w-wt))

# 配列のデータ型をuint8からfloatに変換
src = np.array(src, dtype="float")
temp = np.array(temp, dtype="float")

# 走査
for dy in range(0, h - ht):
for dx in range(0, w - wt):
# 窓画像
roi = src[dy:dy + ht, dx:dx + wt]
# NCCの計算式
num = np.sum(roi * temp)
den = np.sqrt((np.sum(roi ** 2))) * np.sqrt(np.sum(temp ** 2))
if den == 0:
score[dy, dx] = 0
score[dy, dx] = num / den

# スコアが最大(1に最も近い)の走査位置を返す
pt = np.unravel_index(score.argmax(), score.shape)

return (pt[1], pt[0])


# 入力画像の読み込み
img = cv2.imread("C:/\learn_python/ncc/messi.png")
temp = cv2.imread("C:/\learn_python/ncc/template.png")

# グレースケール変換
gray = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY)
temp = cv2.cvtColor(temp, cv2.COLOR_RGB2GRAY)

# テンプレート画像の高さ・幅
h, w = temp.shape

# テンプレートマッチング(NumPyで実装)
pt = template_matching_ncc(gray, temp)

# テンプレートマッチングの結果を出力
cv2.rectangle(img, (pt[0], pt[1]), (pt[0] + w, pt[1] + h), (0, 0, 200), 3)

# 結果を出力
cv2.imwrite("C:/\learn_python/ncc/output.png", img)

Что делает видео по-настоящему запоминающимся? Наверное, та самая атмосфера, которая заставляет забыть о времени. Когда вы заходите на RUVIDEO, чтобы посмотреть онлайн «Python - OpenCV: Template Matching - Normalized Cross Correlation (NCC ZNCC)» бесплатно и без регистрации, вы рассчитываете на нечто большее, чем просто загрузку плеера. И мы это понимаем. Контент такого уровня заслуживает того, чтобы его смотрели в HD 1080, без дрожания картинки и бесконечного буферизации.

Честно говоря, Rutube сегодня — это кладезь уникальных находок, которые часто теряются в общем шуме. Мы же вытаскиваем на поверхность самое интересное. Будь то динамичный экшн, глубокий разбор темы от любимого автора или просто уютное видео для настроения — всё это доступно здесь бесплатно и без лишних формальностей. Никаких «заполните анкету, чтобы продолжить». Только вы, ваш экран и качественный поток.

Если вас зацепило это видео, не забудьте взглянуть на похожие материалы в блоке справа. Мы откалибровали наши алгоритмы так, чтобы они подбирали контент не просто «по тегам», а по настроению и смыслу. Ведь в конечном итоге, онлайн-кинотеатр — это не склад файлов, а место, где каждый вечер можно найти свою историю. Приятного вам отдыха на RUVIDEO!

Видео взято из открытых источников Rutube. Если вы правообладатель, обратитесь к первоисточнику.