先感谢大佬(文章引用):https://blog.csdn.net/qq_33854260/article/details/106297999
这是一个关于预制构件的项目,已经研究好久了 今天把这些贴上来
需要处理的原图片长这个样子:
简单介绍一下,这个东西叫做叠合板,是现在国家大力推广的装配式建筑里面的一种常用构件,我们需要识别检测的就是它的尺寸。即获得像素块即可,因为相机是固定的直接根据实际长度算出来一个比例尺就好了。最主要的是先搞定图像的处理。
首先对他进行一个灰度图,二值化的处理,二值化是自动计算阈值的二值化。先看这部分实现的代码:
import cv2
import numpy as np
from matplotlib import pyplot as plt
image=cv2.imread('00000008.jpg') #图片就在当前目录下
gray = cv2.cvtColor(image, cv2.COLOR_RGB2GRAY) #把输入图像灰度化
h, w =gray.shape[:2]
m = np.reshape(gray, [1,w*h])
mean = m.sum()/(w*h)
ret, mask_sel = cv2.threshold(gray, mean, 255, cv2.THRESH_BINARY)
#, contours, hierarchy = cv2.findConto