0%

2019年1月2日 上午10:29

OpenCV

Ubuntu 16.04 安装opencv的各种方法(含opencv contrib扩展包安装方法) - ZeroZone零域的博客 - CSDN博客
测试:
OpenCV+Ubuntu18.04环境搭建 - qq_38660394的博客 - CSDN博客

QT

主要:
Ubuntu 16.04上安装QT - Hansion的博客 - CSDN博客
ubuntu16.04设置Qt环境变量 - 大黄老鼠的博客 - CSDN博客
次要:
在Ubuntu下安装qt - Welcome you, my friend - CSDN博客
测试:
在Ubuntu下搭建Qt开发环境和Qt creator - 花花的博客 - CSDN博客

2018年12月31日 下午8:50

增量运动恢复结构:获得稀疏点云

  1. 参数设置:
    1. task4_incremental_sfm
      1. ./examples/data/data_czh ./examples/data/sequence_scene_czh
  2. 执行过程:
    1. task4_incremental_sfm_print.txt
  3. 运行结果:

稠密点云重建

  1. 参数设置:

    1. task5_dmrecon_multi_views
      1. ./examples/data/sequence_scene_czh 2
    2. class5_scene2pset_multi_views
      1. ./examples/data/sequence_scene_czh ./examples/data/sequence_scene_czh/dense_points0.ply 2
  2. 执行过程:

    1. task5_dmrecon_multi_views_print.txt
    2. class5_scene2pset_multi_views_print.txt
  3. 运行结果:


文理贴图

  1. 参数设置:
    1. task6_surface_reconstruction
      1. ./examples/data/sequence_scene_czh/dense_points0.ply ./examples/data/sequence_scene_czh/outmesh.ply
  2. 执行过程:
    1. task6_surface_reconstruction_print.txt
  3. 运行结果:

2018年12月29日 下午3:48

  1. 学到这里我突然意识到,其实分布式如果要从硬件角度去思考的话只有一种架构:一主多从。不论是HDFS,还是Hbase都是这样的原理,MapReduce不是因为它不是属于分布式架构,而是属于计算架构、编程模型
  2. 在学习分布式架构时,有几个重要的分析角度:
    1. 【顶层】从硬件(client使用)的角度
      1. 基本上全是一主多从
    2. 【中间层】从任务的角度
    3. 【底层】从数据的角度
      1. 数据层是要结合具体的算法来体现数据的流动和变化的
      2. 底层的算法和顶层的架构是无关的

HBase 可伸缩架构

一些基本的概念:

数据的读取:

数据的写入(描述的是一个扩展的过程):

HBase数据模型:

HBase高性能存储

2018年12月29日 下午3:48
HDFS我认为他最核心的作用是:作为底层,完成了对硬件层的抽象,有点类似于网络中数据链路层的感觉(只是感觉像,作用和原理完全不同)

大规模数据存储都需要解决几个核心问题

大规模数据存储方式的演化过程

核心方法就是考虑并行、备份,并且考虑容错
最后的表格中也能看出RAID的本质是啥。


RAID和HDFS的联系

为什么HDFS的地位如何稳固?

HDFS架构图:

我认为就是一个普通的普通的文件系统罢了,概念是不变的,只不过是这些概念的参数大大小小的区别。

DataNode的作用

NameNode作用

NadeNode容错


几个重要的概念:

  1. 冗余备份
  2. 失效转移
  3. 用户请求量大时:
    1. 限流:拒绝部分请求
    2. 降级:关闭部分功能

HDFS如何通过大规模分布式服务器集群实现大容量、高速、可靠访问的?

注:HDFS并不是可以防止各种异常的发生,而是在它身上集成了各种异常发生的策略

2018年12月29日 下午3:48
注:这里就是概念的学习,但是要认识到概念的重要性

遇到问题解决问题:

编程模型


注:一个原始文件被HDFS-》每个数据块-》一个map-》一个线程

计算框架要解决的两个主要问题:

模式这个词代表着可重复

MapReduce 计算框架

shuffle:

Yarn架构:

注:我觉得原理非常简单,先别看任何资料去理解:老板(资源管理器)总需要一些得力二把手(applicationMaster),老板的任务是管好这些二把手,二把手需要资源时向boss申请就行,老板不用再管各个二把手具体的任务了。当然这个过程也要有监工(节点管理器),去监督自己的服务器是否好好干活。

框架的判断原则:依赖倒转原则

2018年12月29日 下午3:48
Hadoop和spark对比

RDD弹性数据集(Resilient Distributed Datasets)

spark更加高效的原因:(数据角度)



spark的作业管理:(时间任务角度)

注:这个图中没有显示RDD的位置,原因是RDD代表的是数据角度,而上面图是从时间任务的角度去划分,它们是不同的角度。
如果要从数据的角度去分析,那么:

注:也就是说:一个数据分片=一个计算任务task

spark的执行过程:(从硬件+线程的角度去理解)

2018年12月29日 下午3:48

大数据根本的思路:

  1. 大数据计算的核心思路是移动计算比移动数据更加划算
  2. 移动计算程序到数据所在位置进行计算
  3. 网站系统架构的核心原理
  4. 大数据处理的目的与网站架构的不同

从历史发展、需求变化的角度去串起来大数据技术

数据的来演和使用方法

2018年12月29日 下午3:48
未来程序员的要求:

我们常常意识不到问题的存在,直到有人解决了这个问题

有洞见并且不让人产生排斥感的方法:不要直接提出你的问题和方案