月度归档:2016年01月

矩阵系统

首先,在集合的基础上,额外定义满足要求1的加法,就形成加群,再额外定义满足要求2的数乘,就形成向量空间,再额外定义满足要求3的向量内积,就形成了内积空间。
在这里,我们只需要基于向量空间就可以研究一种重要的映射:线性映射,可以说它是代数系统中最重要的映射方法。
经过分析,我们进一步可以知道线性映射所在的映射空间总是可以与矩阵空间同构,每一个线性映射因此可以利用矩阵进行研究。
所以可以简单的说,研究向量空间间的线性映射,其实就是研究矩阵,矩阵线性映射
从映射角度看,所有线性映射问题都可以通过矩阵进行研究,实现了形式的统一和简化。
从矩阵角度看,所有矩阵都可以经过分析转化为从某空间到另一空间的映射,进而把矩阵问题可以转化为更加基本的映射问题,拓展解决问题的思路。

线性代数基础概念

Read More

NYI摄影日常知识集

纽摄作为胶卷时代的经典,在数字时代尽管有诸多的局限性,但仍然有一些日常主题中常用的技巧,例如构图,布光,儿童摄影等

NYI摄影三原则

  • 拍摄主体是基础,一定要保证主体的支配地位,排除物管要素。
  • 拍摄中的其余元素都是引导,将读者视线引导至主体。
  • 拍摄的主题是核心,它决定了相片的内涵和传递的感情,而主体通常是反映内涵的关键。

构图

  1. 除非正中央或贴边带来明显的视觉优势,否则不应当进行中央构图
  2. 眼睛是人像摄影的核心,对焦清晰,眼神高光通常是必要的。
  3. 人物为主的风光摄影中要积极利用透视效应,放大人像的支配地位
  4. 利用前景形成封闭框可以突出拍摄主体。
  5. 降低视角可以极大地扩大地面的厚重感,使主体更加突出
  6. 除非必要,永远在主体附近留充分的空间以便于裁剪
  7. 构图思路:中心-放大-封闭-采光-虚化-汇聚-重复-运动-后期裁剪

光线

  1. 正面硬光没有阴影,避免使用
  2. 45度光应当是比较完美的,阴影中仍有细节
  3. 90度光形成强烈的反差
  4. 人像摄影中,脸颊三角布光很容易构造,f/8是可以接受的最大光圈,必须保证每一处都清晰。
  5. 45度人像法:人体与镜头呈45度角,头转向镜头身体不动。45度三角布光

儿童摄影

Read More

相机物理基础

光圈与通光率的关系
* 对任意焦段,同样的f值拥有相同的通光率
* 光圈值为f,则通光率正比于1/f^2

曝光与白平衡

  • 感光原件特性
    感光元件的宽容度非常小,当拍摄范围内明暗变化大时,极容易出现暗部欠曝或亮部过曝的情形,不像人眼,同时可以看见亮部和暗部的细节。另外,过曝通常要比欠曝更容易被系统控制。
  • 曝光和白平衡
    在数码时代,我们应该忽略这两个因素,相机的自动系统会为我们留下最多的细节,利用后期调节要远比现场选择参数更加高效。
    事实上,拍摄系统依据18%灰度原则,自动曝光时总是会选择一个参数,使整体获得尽可能多的细节。这也就产生了所谓的曝光误差,例如雪景偏暗,暗室偏亮。这些曝光误差在模拟时代是致命的,它让照片显得不真实,因此需要精确的调节曝光参数;而在数码时代,由于后期的存在,我们应当尽量多的保留拍摄细节,使自己有更多的可调节范围,当然,你如果不喜欢或不擅长后期,直接利用灰卡测光,直出也是可以的。

复制比与放大率

  • 复制比是指 拍摄主体在感光原件上成的像 占 感光元件长度 的 比例。复制比的极限值为100%
Read More

图像的简单相位配准 with MATLAB

相位配准概述
相位配准是一种非常经典的理论,理论论述互联网上有很多,我直接给出一个流程图,简述重点。

算法流程图

  • 相位配准的原始理论互联网上已经很多,我不过多赘述,使用完全相同的两个图像在空间内平移进行推导。只强调一下,在实际使用时,可以证明,只要两个图像有完全相同的部分,那么就可以使用相位配准
    结论图像
  • 带有旋转/缩放的相位配准不要看普通教材,普通教材愚蠢的试图先绕图像中心旋转缩放,再进行平移。事实上,只要有空间变换(或刚体运动学)知识,就可以知道如果刚体可以仅通过缩放和旋转从A变为B,那么必然可以确定一个空间点O,使刚体A仅绕O进行一次缩放和一次旋转到达B,也就是说,只要我们确定了点O,那么进行对数极换元就可以直接确定旋转和缩放参数。
  • 如果只是绕中心旋转的图片,那么做对数极换元,再做平移的相位配准即可,我必须说,这毫无意义,这里面的工作最大头为对数极换元,which和图像处理没有什么关系。
  • MATLAB 2014a后自带了一个 imregcor 函数,它对重合区域较大(目测至少20%)的两个图像进行相位配准非常高效,平移,旋转 缩放都OK。本文末尾附带的是一个我的实现,它的重难点在于附带了一个图像拼接程序,要比相位配准中求出坐标更复杂。

function runrun()
PhCorrelationRotation('cameraman.png','cameraman_part_rotate_scaling.png',0)
end

function PhCorrelationRotation(baseimgpath,sampleimgpath,deltaH)
if 
Read More