摘要: 需要齐次坐标的原因:在欧几里得几何空间里,两条平行线永远都不会相交。但是在投影空间中,两条铁轨在地平线处却是会相交的,因为在无限远处它们看起来相交于一点。在欧几里得(或称笛卡尔)空间里描述2D/3D 几何物体是很理想的,但在投影空间里面却并不见得。 我们用 (x, y) 表示笛卡尔空间中的一个 2D 点,而处于无限远处的点 (∞,∞) 在笛卡尔空间里是没有意义的。投影空间里的两条平行线会在无限远处相交于一点,但笛卡尔空间里面无法搞定这个问题(因为无限远处的点在笛卡尔空间里是没有意义的)。由 August Ferdinand Möbius 提出的齐次坐标(Homogeneous coo 阅读全文
posted @ 2012-04-03 18:36 super119 阅读(414) 评论(0) 推荐(0)
摘要: 转自:http://www.wretch.cc/blog/hamer/1724101gamma correction簡單的說就是亮度校正, 但是調整gamma值不僅會影響image的亮度, 也會影響到R,G,B的比例gamma指的就是power function的指數, i.e. p(x) = x^(gamma) for example, x = 3, and gamma = 2, then x 經過 power function p的作用後其輸出的值不會是原來的 3 而變成 9 為什麼要考慮到gamma呢, 因為一般來說當我們想要再螢幕上看image時, 因為螢幕對於接受到的輸入能量會有一. 阅读全文
posted @ 2012-04-03 15:33 super119 阅读(380) 评论(0) 推荐(0)
摘要: 代码位于:power/suspend.c,从函数pm_suspend开始。suspend的逻辑和driver相关的主要就是遍历所有device,并调用他们相关driver的suspend函数指针(包括该device的class,bus这些的suspend函数指针)。至于device调用的先后次序是这样的:当我们执行device_add的时候,这些device会被加到一个dpm_list的list中,而且晚add的device会出现在list的靠前位置。也就是说,早add的device会晚一点被suspend,最后add的device会第一个被suspend。resume的时候就正好反过来,.. 阅读全文
posted @ 2012-04-03 14:40 super119 阅读(340) 评论(0) 推荐(0)
摘要: 因为kernel启动的CMDLINE有两个来源:(1)来自bootloader。比如u-boot会将CMDLINE放在一个地址中,然后kernel从这个地址就可以取到。当然这个地址uboot和kernel的代码中必须一致。(2)来自make menuconfig的时候的指定。在make menuconfig的时候,在Boot options->Kernel command line type中,可以指定kernel的CMDLINE是来自uboot还是来自kernel自身配置的,还是extend from bootloader(这个是指将bootloader给出的cmdline和kerne 阅读全文
posted @ 2012-04-03 13:48 super119 阅读(1608) 评论(0) 推荐(0)