找回密码
 注册
搜索
查看: 770|回复: 0

[讨论] 关于开发130万拍照常见问题

[复制链接]
发表于 2009-3-19 11:12:25 | 显示全部楼层 |阅读模式
这是我在EPSON上开发130万手机过程碰到的一些问题,写的不是很好,希望大家多多赐教,能起到抛砖引玉的作用!
  目前手机成为大家生活中不可缺少的一部分,不但样式众多,而且功能也不断增强,Touch panel,GPRS,JAVA,FM,Camera,MP3,TV等等,就camera 而言,从开始的30K不断攀比到目前的炒得很热的200K,而且还再上升,然而现在手机上采用的基本都是基于ARM7的,其CPU工作时钟都不是很高(估计大概都是30MHz左右吧),在这样的情况,对于去开发130K或者更高像素的手机,涉及的处理难度就很大了!
  现在就我开发的130K的手机为例做些分析。(23M的工作时钟)

  常碰到问题:
  1.在sxga模式下,预览和拍照的数度都较慢(2.8fps)。原因:在这种模式下,sensor输出的数据量大,在capture时,Encode jpg相应的需要处理的数据量也大。故导致了在SXGA模式下的预览和拍照都比普通模式(22.5fps)要慢。
  2.在图像较复杂(压缩后较大,Size(jpg)>128K)时,由于条件1的可能导致encode’s FIFO满,结果拍照失败。此现象多出现在sxga模式高清晰图片下,但理论上的分析表明只要图像数据量大,数据来得快,由于cpu读取FIFO的速度慢于LCDC Encode jpg写FIFO的速度,一旦超过了FIFO的128k,最终都会拍照失败。Sensor 频率过高,导致了LCDC来不及成功地处理完数据,导致拍照失败!

  解决方法:
  对于问题1有如下方法:
  A. 采用vga预览,sxga抓拍,可以提高预览速度,但会导致拍摄的画面与预览画面不一致的缺点。如果要求用户在拍照过程中(Encode jpg的时候)不要移动手机,直到Encode jpg完成(菜单条刷新之后为标示,表示已压缩完成),这样可以保证“即拍即看”;
  B. 采用vga预览,sxga抓拍,可以提高预览速度,利用Encode的时候回放,可以保证“即拍即看”,但是屏幕在切换时可能会存在抖动;
   C. 采用vga预览,sxga抓拍,可以提高预览速度,利用Encode完成之后回放,可以保证“即拍即看”,但是由于encode jpg速度比较慢,故大概过了3s之后会切换当前LCD预览的照片;
  D. 采用由于采取的是自动增益调整,需要一定的延时来保证切换的顺利。所以拍摄的图片质量有时难以保证。
  推荐的方法是C,能保证“即拍即看”,而且不会产生太多别的问题,像抖动,等待,或是牺牲速度。
  对于问题2有如下方法:
    A. 降低量化表以牺牲图片质量为代价,但图片质量在光线较暗的环境下图片质量无法接受;
    B. 降低sensor送来数据的速度即降低camera的频率,负面的影响是预览和拍照速度很慢;
  推荐的方法:在SXGA模式下,降低拍照的图片质量,同时相应的降低些Sensor送来的数据,来尽可能的克服问题。
高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-11-26 20:01 , Processed in 0.048319 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表