Python opencv读取深度图,网格化显示深度

效果图:

代码:

python 复制代码
import cv2
import os

img_path = "./outdir/180m_norm_depth.png"
depth_img = cv2.imread(img_path, cv2.IMREAD_ANYDEPTH)
filename = os.path.basename(img_path)
img_hig, img_wid = depth_img.shape  # (1080, 1920)
print(depth_img.shape)

point_color = (0, 0, 255) # BGR
thickness = 5 
lineType = 4

grid_size = 80

for i in range(img_wid // grid_size):  # 40 为正方向网格的宽
    for j in range(img_hig // grid_size):
        p1 = ((i + 1) * grid_size, (j + 1) * grid_size)
        p2 = (i * grid_size, (j + 1) * grid_size)
        p3 = ((i + 1) * grid_size, j * grid_size)
        cv2.line(depth_img, p1, p2, point_color, thickness, lineType)
        cv2.line(depth_img, p1, p3, point_color, thickness, lineType)
        depth_pos = ((i + 1) * grid_size - grid_size // 2, (j + 1) * grid_size - grid_size // 2)
        depth_value = depth_img[depth_pos[1], depth_pos[0]]
        cv2.putText(depth_img, str(depth_value), (depth_pos[0] - 20, depth_pos[1]), cv2.FONT_HERSHEY_COMPLEX, 0.8, (100, 200, 200), 1)
        # depth_img[i][j] = depth_img[i][j] / 1000
cv2.imwrite(os.path.join("./outdir/", filename[:filename.rfind('.')] + '_grid.png'), depth_img)
相关推荐
开源盛世!!6 分钟前
4.20-4.22
java·服务器·开发语言
MediaTea8 分钟前
Scikit-learn:一个最小机器学习工作流示例
人工智能·python·机器学习·scikit-learn
qq_3493174811 分钟前
Layui如何修改表格单元格内文字的行间距
jvm·数据库·python
MmeD UCIZ12 分钟前
GO 快速升级Go版本
开发语言·redis·golang
2301_7751481521 分钟前
Redis如何实现用户标签管理_利用Set结构存储唯一属性集合
jvm·数据库·python
m0_5964063725 分钟前
mysql如何配置审计日志输出_mysql audit_log_format设置
jvm·数据库·python
Fate_I_C29 分钟前
Kotlin函数一
android·开发语言·kotlin
Eiceblue31 分钟前
C# 实现 XLS 与 XLSX 格式双向互转(无需依赖 Office)
开发语言·c#·visual studio
2301_8166602135 分钟前
Bootstrap框架的最小宽度限制是多少
jvm·数据库·python
水木流年追梦1 小时前
CodeTop Top 300 热门题目2-最长回文子串
开发语言·人工智能·python·算法·leetcode