3
A
回答
1
根据您在评论中提供的链接,这就是我相信你正在试图做的。
您想创建一个具有n个元素的数组,其中n是输入图像中的列数。数组的第n个元素的值是第n列中所有像素的总和。
您可以通过循环遍历输入图像的列来计算此数组,使用cvGetSubRect访问该列中的像素,并使用cvSum来对这些像素进行求和。
下面是一些Python代码,不会说,假设一个灰度图像:
import cv
def verticalProjection(img):
"Return a list containing the sum of the pixels in each column"
(w,h) = cv.GetSize(img)
sumCols = []
for j in range(w):
col = cv.GetSubRect(img, (j,0,1,h))
sumCols.append(cv.Sum(col)[0])
return sumCols
5
The most efficient办法做到这一点是使用cvReduce功能。有一个参数允许您选择是否需要水平或垂直投影。
1
更新carnieri答案(CV一些功能不工作今天)
import numpy as np
import cv2
def verticalProjection(img):
"Return a list containing the sum of the pixels in each column"
(h, w) = img.shape[:2]
sumCols = []
for j in range(w):
col = img[0:h, j:j+1] # y1:y2, x1:x2
sumCols.append(np.sum(col))
return sumCols
问候。
相关问题
- 1. aforge中的垂直直方图和水平直方图
- 2. 计算垂直和水平直方图
- 3. 直方图值的平均值OpenCV
- 4. 水平频率直方图的问题
- 5. 直方图opencv
- 6. 水平轴上的图像“黑色墨水量”的直方图
- 7. 翻转左右平直水平直方图
- 8. 垂直和水平视图
- 9. 如何使用OpenCV水平或垂直拉伸图像
- 10. OpenCV中曲线的垂直和水平投影
- 11. 垂直和水平居中FontAwesome图标
- 12. IE7垂直和水平图像居中
- 13. 垂直和水平方向的中心图像
- 14. R中的直方图跟踪库存水平
- 15. 垂直和水平居中图像下方的标题
- 16. Python如何用HoughLines和OpenCV检测图像中的垂直和水平线?
- 17. 使用OpenCV从边缘图像中删除长长的水平/垂直线
- 18. OpenCV的高斯模糊/ 3D矩阵/直方图的平滑
- 19. OpenCV中的直方图函数
- 20. 基于OpenCV中心的直方图
- 21. 高图 - 垂直和水平的梯度
- 22. 图像的水平和垂直投影
- 23. 图像的垂直和水平对齐
- 24. OpenCV直方图蒙版
- 25. WPF中水平垂直WrapPanel
- 26. 直方图平滑
- 27. 在java中创建一个水平直方图
- 28. 谷值检测的平滑一维直方图(OpenCV)
- 29. opencv库中的水平翻转
- 30. 混合垂直和水平布局(水平布局类图)
感谢Carnieri,我用cvGetReal2D做了同样的工作。再次感谢。 – user522659 2010-12-13 16:40:41