一、重心
图像重心的数学公式是用来计算图像中所有像素的平均位置,通常表示为 (x, y)
,其中 x
是横坐标,y
是纵坐标。数学公式如下:
1、图像的重心坐标计算
假设我们有一个二维图像,其中 (x, y)
表示图像中每个像素的坐标。I(x, y)
表示图像在 (x, y)
处的亮度(或像素值),通常是灰度值。
图像的重心坐标 (X, Y)
可以通过以下公式计算:
X = Σ [x * I(x, y)] / Σ I(x, y)
Y = Σ [y * I(x, y)] / Σ I(x, y)
2、代码
下面展示一些 内联代码片
。
// An highlighted block
pip install pytorch==1.1.0 torchvision==0.3.0 cudatoolkit=9.0 -c pytorch
import cv2
import numpy as np
# 读取图像
image = cv2.imread(r"E:\all_data\data\The_PASCAL_VOC_2012\VOCtrainval_11-May-2012\VOCdevkit\VOC2012\JPEGImages\2007_000068.jpg")
# 转换为灰度图像
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
# 二值化处理,将图像转换为黑白
_, thresholded = cv2.threshold(gray, 128, 255, cv2.THRESH_BINARY)
# 计算图像的矩
M = cv2.moments(thresholded)
# 计算重心坐标
cX = int(M["m10"] / M["m00"])
cY = int(M["m01"] / M["m00"])
# 在图像上绘制重心
cv2.circle(image, (cX, cY), 5, (0, 0, 255), -1)
# 显示图像和重心
cv2.imshow("Image with Centroid", image)
cv2.waitKey(0)
cv2.destroyAllWindows()