嵌入式开发者社区

标题: ov2640设置咨询 [打印本页]

作者: bit0rain    时间: 2014-12-23 17:06
标题: ov2640设置咨询
我使用了tl2640-a2模块,现在想把它按如下方式设置:cif(60fps),关闭白平衡,yuv输出。请问应该如何设置,谢谢!
5 M4 u8 d/ l  Z! K( ]
4 N8 z  N( f! b* g4 F) {
作者: Lewis    时间: 2014-12-24 18:35
下面是JPEG输出时的设置,可以参考修改成YUV输出CIF 352*288# W* }! c* Y4 E5 R( x, y
const unsigned char OV2640_YUV422[][2]=
7 O: X( b& t4 m. X& _+ M* }) Y{
( [! D9 i3 P* ]% d( r  0xFF, 0x00," k2 k3 _1 o% t4 Q
  0x05, 0x00,$ }* D% Z+ N& w" c9 r7 Q- M
  0xDA, 0x10,
  W: t( L4 A& e5 w" E4 x. N' N  L  B  0xD7, 0x03,
# p4 F1 Z, x% _0 m& c) P1 o  0xDF, 0x00,4 \- c# J) u( ]0 H( F
  0x33, 0x80,
$ y% c& q5 s1 r( l5 |; T1 {6 j  0x3C, 0x40,# G) }# h, Z/ j$ E/ Q2 w
  0xe1, 0x77,
9 m4 c9 d& S: D! d' C" z  0x00, 0x00,# T6 Y0 r  S3 O2 x9 W* |) b
};
6 _0 k& p; n7 f% L  _
! W8 S0 H- ?3 {& x; |: G% b; ]- c/* JPG 352x288 */2 Q8 B2 I  P% D" e; R/ ~& |( v
const unsigned char OV2640_352x288_JPEG[][2]=
2 E0 j+ n' t- V+ x* @3 s{# D1 s4 ~) c# j5 V; w) j8 c/ n
  0xff, 0x01,
7 Y( H- C6 e: u7 ?" w# A  V  0x12, 0x40,9 N4 u  O  D- H; ]" \
  0x17, 0x11,+ Z, O9 V: I, D  y
  0x18, 0x43,
. ?  ]1 ]) \+ n  0x19, 0x00,
. Q4 M/ Z. Q3 R4 u  0x1a, 0x4b,' w, C  z# x6 ~. u1 H) [, z
  0x32, 0x09,9 }5 b* x5 G3 ^% E5 ~) V
  0x4f, 0xca,. m# e; x1 A# C- A8 l4 W! }. A
  0x50, 0xa8,' }3 [& d0 a8 u* G
  0x5a, 0x23,/ ]$ S0 B: Y! o- \8 o9 S
  0x6d, 0x00,
4 v3 s$ W- u$ c7 b' w  0x39, 0x12,2 @( E: @$ _9 ?0 V  h! Z
  0x35, 0xda,
0 M2 A" I1 `4 a& P2 l  0x22, 0x1a,
# Y# a/ ?4 e/ @( d% U! t  0x37, 0xc3,! m7 c) m2 y) w  T
  0x23, 0x00,3 d$ N- @4 i- k8 y' l
  0x34, 0xc0,
' ^' m8 b2 `/ C0 {& ]0 b  0x36, 0x1a,3 y' q  M9 m: x, Z# ~
  0x06, 0x88,5 @4 O9 T) a  J* S( c% N5 c/ r
  0x07, 0xc0,
/ e0 p, U. X1 Z- q  0x0d, 0x87,( Q' m* }* g1 {! l# j
  0x0e, 0x41,
" e6 L( T7 y; E! l. B% d! A  0x4c, 0x00,9 o* X  Q8 Z, K0 `
0 Y6 J4 e* s* t! T. j7 k/ I  ~
  0xff, 0x00,
* U, m  O* [; G; a  0xe0, 0x04,  L: T4 c1 x: |2 f2 |
  0xc0, 0x64,
3 F* o# R4 l) b0 o; [1 a2 M  0xc1, 0x4b,( A: K, o- s# x1 Z0 Z3 H, y
  0x86, 0x35,2 @. z5 k& S9 n9 k. u1 u
  0x50, 0x89,% o# X8 |) Q, D* Y
  0x51, 0xc8,
  p+ Z1 Q0 W, @; w7 B3 z0 k+ L  0x52, 0x96,
9 |  q- s( H+ J0 Y  0x53, 0x00,' n$ W0 Z9 q- x- G2 ]& ?+ k) a
  0x54, 0x00,
: b2 `  o6 X0 o/ S& S  0x55, 0x00,
, v: y! [) m% W6 e4 x# `: V8 I  0x57, 0x00,
# l8 N( Z( S' C& i. ~  0x5a, 0x58,
; ]" H4 r5 d/ Z: S- f$ M  0x5b, 0x48,! g4 L: j7 I& D# B. t! f: Q
  0x5c, 0x00,
) g2 r% V! B) m7 ]$ n# y8 X  0xe0, 0x00,
4 Q& y( s# r. h- ~0 `};6 k3 i! ], w0 b! _5 S
关闭黑白平衡write_SCCB(0xc7, 0x40); //AWB off
  Z( G4 h) V' R* `" i+ ?参考OV2640 Software Application Notes1.03的Light Mode章节
( O$ S# X6 ]* v9 S% ]3 G+ c4 {9 H
( Z1 M4 c8 x. u& e$ c1 w% [$ {6 J+ L- G( s" K0 K+ w$ @4 [! f

作者: bit0rain    时间: 2014-12-25 09:14
本帖最后由 bit0rain 于 2014-12-31 15:10 编辑
: J! I8 C/ r0 m, F, l
Lewis 发表于 2014-12-24 18:35
/ z6 o8 e0 n, t! Y5 P8 u* q下面是JPEG输出时的设置,可以参考修改成YUV输出CIF 352*288; Q; L! N) v1 s
const unsigned char OV2640_YUV422[][2]=
1 q& ?0 S# i2 y; ^. _{
* ]5 U9 ^# y3 u% [2 C
你好!
; Z! P! E# l! k  j       我想将ov2640的帧率提高到30帧,参考software application1.03修改相关寄存器设置为30帧,程序开跑实测帧率只有16帧左右,请问如何解决?谢谢7 ^% n4 O; t6 o3 q& }; O% R

作者: Lewis    时间: 2014-12-31 17:42
可以将下面的if判断屏蔽,但这样会对c6748的显示有影响,但采集没问题
3 e; _- U- t  v. K5 s$ qif(i>=2)
# N, A8 N4 [; R- p  {( S: A( E; U( W. C
   VPIFCaptureChanenDisable(SOC_VPIF_0_REGS, VPIF_CHANNEL_1);% B6 \, v; P2 x9 u$ T5 n
   VPIFCaptureChanenDisable(SOC_VPIF_0_REGS, VPIF_CHANNEL_0);9 I  F4 q% d$ ^7 ~" p8 q
   Qdma3();* g( b/ }; u# h) [4 G- Y' G
   i=0;+ m1 V$ R( W# r  _/ I7 y
   /* Enable capture */1 F0 A! I1 T; a" n& z$ d3 d
   VPIFCaptureChanenEnable(SOC_VPIF_0_REGS, VPIF_CHANNEL_0);6 r) n5 |- q% G8 a3 w
   VPIFCaptureChanenEnable(SOC_VPIF_0_REGS, VPIF_CHANNEL_1);
6 V( M6 m, D- r+ ?  }
0 U& C+ K0 M6 g& Y  i++;" ~% Y* ^5 c9 I1 s% z; S1 [
* B7 Z% C& L# j2 N4 _# _! j% |2 Y

作者: bit0rain    时间: 2014-12-31 21:54
Lewis 发表于 2014-12-31 17:42
( p4 C% A( R1 g  [% m4 q0 ~& k) B: D可以将下面的if判断屏蔽,但这样会对c6748的显示有影响,但采集没问题8 H+ W) _' q: r# k
if(i>=2)
* J2 V. i- O, `# p  {

4 M$ y, B5 w7 o; m9 V: j! i( z' E# U$ p好的,谢谢lewis,我明天试试,新年快乐; X+ Y, {. L, G) _

作者: bit0rain    时间: 2015-1-3 21:06
基于FaceDetect项目已经将相关的设置改了,按照您说的方法屏蔽掉了Capture那部分代码,帧率提高了,可以到30帧,谢谢# m' e3 D4 F; x

作者: bit0rain    时间: 2015-1-3 21:16
准备结贴了,提高采集帧率可以参考Lewis提供的方法,我是在FaceDetect下修改的,帧率实测达到了30帧。此外需要做算法的兄弟们都希望用灰度,我这里提供一个仅供参考的方法,由于创龙的LCD的屏只支持RGB565的数据,如果用YUV的数据无法在屏幕上直接显示,而做算法的时候一般都需要提取Y分量(灰度),需要对RGB的数据进行转换,这是个比较耗时的工作,对于算法效率有比较大的影响。使用如下方法可以节省进行颜色空间转换的程序:一、设置ov2640的模式为B&W,此时你可以看到LCD的显示变成黑白的了,即ov2640输出灰度图像R=G=B;二、提取任意分量作为算法参考值,G分量有更高的精度,B分量可以使算法更快。这种方法适用于不要求显示彩色图像的场合下,希望对各位有借鉴作用。结贴( z- x3 Y% m2 e

作者: CrazyXiao    时间: 2016-12-1 14:01
@bit0rain。您好,我也想知道配置0v2640的代码。。。还是ciff分辨率rgb565格式的格式?
" ~8 E: m& f6 g, ^/ V9 l% Y( t' l
作者: CrazyXiao    时间: 2016-12-1 14:02
设置成B&W模式后的数据是什么格式?




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4