depth

Kinect学习(四):提取深度数据

匿名 (未验证) 提交于 2019-12-03 00:36:02
前面试着提取了Kinect的彩色数据: Kinect学习(三):获取RGB颜色数据 。这次,要试着提取深度数据。 Depth Map(深度图)是包含与视点的场景对象的表面的距离有关的信息的图像或图像通道。其中,Depth Map 类似于灰度图像,只是它的每个像素值是传感器距离物体的实际距离。通常RGB图像和Depth图像是配准的,因而像素点之间具有一对一的对应关系。 先上代码。 #include <Windows.h> #include <iostream> #include <NuiApi.h> #include <opencv2/opencv.hpp> using namespace std ; using namespace cv; int main( int argc, char *argv[]) { cv::Mat img; // 深度图,使用灰度值来表示深度数据,越远灰度越小则越暗 img.create( 480 , 640 , CV_8UC1); // 1、初始化NUI,使用深度数据 HRESULT hr = NuiInitialize(NUI_INITIALIZE_FLAG_USES_DEPTH); if (FAILED(hr)) { cout << "NuiIntialize failed" << endl; return hr; } // 2、定义事件句柄 //

Kinect学习(五):提取带用户ID的深度数据

匿名 (未验证) 提交于 2019-12-03 00:36:02
在前面的一篇文章中讨论了如何从Kinect获取深度图: Kinect学习(四):提取深度数据 。 这里要对其进行拓展,Kinect可以获取两种格式的深度图: 不带用户ID的深度数据,也是存储在16位的变量中,但是只使用了前12位,用来表示深度。 带用户ID的深度数据,16位,前3位表示用户ID,最多可以识别6个人,后13位表示深度; 在前一篇文章( Kinect学习(四):提取深度数据 )中是使用的就是前者,这里要使用后者。通过带用户ID的深度数据,我们可以很轻易地得到用户在图像中的位置与深度信息,利于后续的抠图等等的操作。 惯例,先上代码。 #include <Windows.h> #include <iostream> #include <NuiApi.h> #include <opencv2/opencv.hpp> using namespace std ; using namespace cv; typedef struct structBGR { BYTE blue; BYTE green; BYTE red; } BGR; // 处理深度数据的每一个像素,如果属于同一个用户的ID,那么像素就标为同种颜色,不同的用户, // 其ID不一样,颜色的标示也不一样,如果不属于某个用户的像素,那么就采用原来的深度值 BGR Depth2RGB(USHORT depthID) {

深度相机同时保存深度图和彩色图

匿名 (未验证) 提交于 2019-12-03 00:33:02
空格键保存深度图和彩色图,办公室环境三维重建 /home/yake/catkin_ws/src/pcl_in_ros/src/16_01Kinect_rgb_depth_saver.cpp #include <ros/ros.h> #include <sensor_msgs/PointCloud2.h> #include <boost/foreach.hpp> #include <sensor_msgs/Image.h> #include <sensor_msgs/image_encodings.h> #include <image_transport/image_transport.h> #include <image_geometry/pinhole_camera_model.h> #include <cv_bridge/cv_bridge.h> // OpenCV2 #include <opencv2/opencv.hpp> #include <opencv2/imgproc/imgproc.hpp> #include <opencv2/highgui/highgui.hpp> // PCL #include <pcl/point_cloud.h> #include <pcl_conversions/pcl_conversions.h> #include <pcl/io

Pascal&#039;s Triangle #2解法

匿名 (未验证) 提交于 2019-12-03 00:30:01
题目如下: 构造一个帕斯卡三角/杨辉三角,并且是构建一个不规则的数组形式 已知帕斯卡三角/杨辉三角每一行第一个和最后一个元素为1,中间元素的值等于它上一行同一列的数值和上一行前一列的数值之和。 由此根据depth可分为三类: depth等于1,数组为【【1】】; depth等于2,数组为【【1】,【1,1】】; depth大于2,需要计算中间值。 代码如下: 文章来源: Pascal's Triangle #2解法

【神经网络】局部响应归一化LRN(Local Response Normalization)

匿名 (未验证) 提交于 2019-12-03 00:21:02
import tensorflow as tf import numpy as np a = np.array(range( 16 )) b = a.reshape([ 1 , 2 , 2 , 4 ]) with tf.Session() as sess: print(sess.run(tf.nn.lrn(b))) b: 形状大小:[1,2,2,4] array( [[[[ 0, 1, 2, 3], [ 4, 5, 6, 7]], [[ 8, 9, 10, 11], [12, 13, 14, 15]]]] ) LRN之后: [[[[ 0. 0.2581989 0.5163978 0.7745967 ] [ 0.35494262 0.44367826 0.53241396 0.6211496 ]] [[ 0.4175966 0.46979618 0.5219958 0.5741953 ] [ 0.44262663 0.47951218 0.5163977 0.5532833 ]]]] 3/np.sqrt(1+1+4+9) = 0.7745966692414834 8/np.sqrt(1+64+81+100+121) = 0.41759660077750443 函数: tf.nn.lrn(input, depth_radius=5, bias=1, alpha=1, beta=0.5,

redhat7.2下VNC没法显示图像

匿名 (未验证) 提交于 2019-12-03 00:09:02
1,Symptom /root/.vnc/HR-ECC-PRD-02:1.log内容有信息如下: VNCSconnST: Client pixel format depth 6 (8bpp) rgb222 VNCSconnST: Client pixel format depth 24 (32bpp) little-endian rgp888 2. Cause 分析:没有安装GUI服务, 如没有安装 #cat /etc/yum.repos.d/ #vi local.repo [local] name=rhel7.2 baseurl=file///mnt enable=1 gpgcheck=0 2.2. 检查/mnt, mount ISO文件 #mount rhel.iso /mnt mount:/dev/loop0 is write-protected, mounting read-only 3.安装GUI服务 #yun grouplist #yum groupinstall -y "Server with GUI" 安装大概587个文件 完毕后重启vnc,登陆成功。 来源:博客园 作者: BASIS/老应 链接:https://www.cnblogs.com/weikui/p/11555106.html

postgresql 添加触发器

匿名 (未验证) 提交于 2019-12-02 23:57:01
添加触发器 -- 创建触发器函数 CREATE FUNCTION update_kpi_for_path_depth_trigger_fun() returns trigger as $$ begin DELETE from kpi_path; WITH RECURSIVE T (kpi_id, NAME, PARENT_ID, PATH, DEPTH,kpi_sql) AS ( SELECT kpi_id, NAME, PARENT_ID, ARRAY[kpi_id] AS PATH, 1 AS DEPTH,kpi_sql FROM kpi WHERE PARENT_ID = 0 UNION ALL SELECT D.kpi_id, D.NAME, D.PARENT_ID, T.PATH || D.kpi_id, T.DEPTH + 1 AS DEPTH,D.kpi_sql FROM kpi D JOIN T ON D.PARENT_ID = T.kpi_id ) INSERT INTO kpi_path(kpi_id,name,parent_id,path,depth,kpi_sql) SELECT kpi_id, NAME, PARENT_ID, PATH, DEPTH,kpi_sql FROM T ORDER BY PATH; UPDATE kpi set path =p

Depth from Videos in the Wild 剖析

匿名 (未验证) 提交于 2019-12-02 23:49:02
2019年7月17日11:37:05 论文 Depth from Videos in the Wild: Unsupervised Monocular Depth Learning from Unknown Cameras 主要有几个亮点: 1,处理移动物体时 instance segmentation and tracking are not required,不需要实例分割,   虽然文章里说还是需要一个网络预测可能移动的区域,但比起需要实例分割,难度还是下降了点。 2,occlusion-aware consistency 遮挡情形下的深度预测一致性 3,能够通过网络学习内参 这篇文章还是有点干货的,毕竟谷歌出品。 先讨论第二点,遮挡情形下的深度预测的问题 这里很好理解也比较好实现: 左右两个相机对同一个场景进行观察,但是因为存在遮挡的原因,左右两个相机对 同一个三维点的深度预测结果不一致。这些遮挡区域有什么特点呢? 左右两个相机对同一个三维点的预测深度分别为$\mathbf{z}_{L}$和$\mathbf{z}_{R}$ 然后 把$\mathbf{z}_{L}$变换(warp)到右相机所在的位置得到深度$z_{L}^{\prime}$ 把$\mathbf{z}_{R}$变换到左相机所在的位置得到深度$z_{R}^{\prime}$ we apply photometric

二叉树的锯齿形层次遍历

♀尐吖头ヾ 提交于 2019-12-02 18:09:05
题目介绍 给定一个二叉树,返回其节点值的锯齿形层次遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。 思路 迭代:采用经过加工的广度遍历,引入depth层数,逐层将元素放入链表(奇数层插入到尾部,偶数层插入到头部),用队列的长度代表每层的元素个数,即内层循环的次数,再将下一层元素放入队列。 递归:类似深度优先遍历 关键代码 迭代 public static List<List<Integer>> zigzagLevelOrder(TreeNode root) { List<List<Integer>> lists=new ArrayList<>(); if(root==null) return lists; Queue<TreeNode>queue=new LinkedList<>(); queue.add(root); int depth=0; while (!queue.isEmpty()){ List<Integer> tmp = new LinkedList<>(); int count=queue.size(); for(int i=0;i<count;i++){ TreeNode temp=queue.poll(); if(depth%2==0) tmp.add(temp.val); else//从首部添加元素 tmp.add(0,temp

最近公共祖先 LCA

99封情书 提交于 2019-12-02 12:29:44
原创建时间:2018-08-07 14:08:52 两个结点找共同的爸爸 LCA 的概念 在 图论 和 计算机科学 中, 最近公共祖先 (英语:lowest common ancestor)是指在一个 树 或者 有向无环图 中同时拥有v和w作为后代的最深的节点。 ——Wikipedia 看不懂没关系 简单的来说,就是两个节点v和w的最近的祖先节点 如下图 6和7的LCA是2,3和7的LCA是1 LCA 的求法 暴力求解 让他们一步一步往上爬,直到相遇 节点背着那重重的编号呀 一步一步地往上爬 ——《蜗牛与黄鹂鸟》 显然,这样的算法会 T到飞起 所以我们要使用 倍增 优化 倍增求解 所谓倍增,就是按2的倍数来增大,也就是跳 1、2、4 、8 、16、32 ... 但是在这里,我们要考虑 开倒车 从大到小跳 因为 如果我们从小到大跳,就会出现要「回溯」的情况,因为我们不一定能精准地跳,而从大到小跳可以避开这种情况 图源cnblogs 对于上面这一棵更复杂的树,我们考虑17和18的LCA 17 ->(跳4) 3 18 ->(跳4) 5 ->(跳1) -> 3 是不是快多了,跳的次数大大减小 时间复杂度 \(O(nlogn)\) LCA 的代码 & 实现流程 实现流程 首先我们要记录各个点的深度 \(depth[\ ]\) 和它们 \(2^i\) 级的祖先 \(father[\ ][\ ]