嵌入式开发者社区

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

作者: bit0rain    时间: 2014-12-23 17:06
标题: ov2640设置咨询
我使用了tl2640-a2模块,现在想把它按如下方式设置:cif(60fps),关闭白平衡,yuv输出。请问应该如何设置,谢谢!+ X- n) }  K! ]- J# k
1 G! b1 f, d: G+ Q+ b9 s

作者: Lewis    时间: 2014-12-24 18:35
下面是JPEG输出时的设置,可以参考修改成YUV输出CIF 352*288
2 z; m9 c  Y2 bconst unsigned char OV2640_YUV422[][2]= 8 K( E1 n2 @$ p$ j
{, E# Z' V3 w  |7 G" H7 q% e& x
  0xFF, 0x00,
9 p- Q3 a% S( {0 q. Q% I4 \  0x05, 0x00,
9 i" h3 e/ w1 {6 R- y  0xDA, 0x10,
0 k% K  S+ w9 C0 c- P& N% o  0xD7, 0x03,7 |) g+ _, }/ Y/ X! T6 Z
  0xDF, 0x00,) ~! J5 |$ h% n% \! Q! Q
  0x33, 0x80,9 Z! [5 z1 g5 F/ A% t
  0x3C, 0x40,
6 |3 g, S( f, Q  p9 S5 I" o' Z9 w  0xe1, 0x77,2 U7 m' ]/ T0 w( D- E5 N, A
  0x00, 0x00,
% B! D9 A+ z% |$ u& s};8 {5 T. v1 k0 s- M' m

; u' Y9 h4 Q' d* m- r% p2 \/* JPG 352x288 */1 @: h9 A3 D9 J3 ?1 Y- x
const unsigned char OV2640_352x288_JPEG[][2]=6 `. ]$ d0 T. U) t
{1 e# g; M/ `2 K" G( z/ M
  0xff, 0x01,( N2 V1 N3 R! @5 Q: b3 _
  0x12, 0x40,$ ?3 ?- K( \0 f6 W& d* V" p+ I
  0x17, 0x11,9 @( C1 A- Q& o* i8 H/ V
  0x18, 0x43,
/ }5 j1 L( s- b' F7 X0 Z; l& `  J  0x19, 0x00,
% d% E5 p$ }6 U% J  0x1a, 0x4b," p3 o/ p* O  j# W% ~; c
  0x32, 0x09,: x+ g; Q  |" C  t5 V# _1 L
  0x4f, 0xca,
" U: [+ s8 l# z) w$ W* M  0x50, 0xa8,
! X, m2 p, e( `' r9 x6 T- z  0x5a, 0x23,
$ p( ?2 T$ i2 k- T' |, ~  0x6d, 0x00,& e/ G$ e) e0 Q% x6 G
  0x39, 0x12,) ~, l! q! T3 d& j4 U( m
  0x35, 0xda,% g+ L) i2 U" Q) Q
  0x22, 0x1a,0 \& o' j/ Q& y& @0 ?3 n! S
  0x37, 0xc3,
  @6 o8 V0 y* G( S( o; m  0x23, 0x00,
& d& S1 c$ o3 T2 [9 }* P8 A  0x34, 0xc0,
) J# Z( b6 W2 }2 d  0x36, 0x1a,# x% ?1 k$ v  L& N0 \  G
  0x06, 0x88,
7 `' I; }; B1 ^$ p2 o  0x07, 0xc0,5 Q$ q4 H  ?- y1 P5 I8 I
  0x0d, 0x87,
! }8 P* c; D, l1 Z9 {  0x0e, 0x41,
, X+ g7 z6 i7 d6 F- c  0x4c, 0x00,
' f  |: N7 J: e' j) D
7 ^6 ]; M  f2 o4 @7 h  O0 L2 t  0xff, 0x00,* e0 z/ j) b) \
  0xe0, 0x04,& l% h3 q" f8 n
  0xc0, 0x64,
7 J5 u1 k, i  }# y5 U" \9 V8 [" f  0xc1, 0x4b,$ F8 N0 V! W- f; C9 _& }+ C
  0x86, 0x35,
/ _9 T1 X9 U6 v. {* _  0x50, 0x89,
. U9 ~9 t3 |6 _) \5 d3 E  0x51, 0xc8,2 S" X+ k& _5 w1 V6 [1 H# K8 O
  0x52, 0x96,
0 I/ l# {: x  m( y: U4 t  0x53, 0x00,2 }3 a" e# {1 M
  0x54, 0x00,: x( x: b1 A; S+ ?* z1 R( }+ _
  0x55, 0x00,
  h$ b6 V# V, Q  0x57, 0x00,
6 h. Y) K8 j: R) m2 u  0x5a, 0x58,
9 j6 n/ t8 f1 X+ T- ?3 V) S7 \% H  0x5b, 0x48,9 A, `3 i8 @7 Q. s( j
  0x5c, 0x00,
0 s0 H' U& J' {  u* q6 U) Q  0xe0, 0x00,
( v& G3 ?6 u2 L4 ^3 y1 B( ?};
8 U. p0 m+ l: ^/ R" z- G) i9 @关闭黑白平衡write_SCCB(0xc7, 0x40); //AWB off( `+ |( \5 v8 M& Q! e
参考OV2640 Software Application Notes1.03的Light Mode章节
: t: c% L$ s9 ~, X0 a6 r" E' A' ^# G3 E

% G0 }$ ~" |% y' U# F; |
作者: bit0rain    时间: 2014-12-25 09:14
本帖最后由 bit0rain 于 2014-12-31 15:10 编辑 3 P! ^, F4 J9 i& N2 A0 Q8 z8 J
Lewis 发表于 2014-12-24 18:35
( J4 v0 v4 \+ G下面是JPEG输出时的设置,可以参考修改成YUV输出CIF 352*288
( z3 l: l3 V* }7 b. Dconst unsigned char OV2640_YUV422[][2]= , j) P4 b1 w/ P% G7 P$ N
{
! N( U; X8 |9 y4 H; m  M6 J
你好!2 U+ e- B9 V4 p2 O/ e
       我想将ov2640的帧率提高到30帧,参考software application1.03修改相关寄存器设置为30帧,程序开跑实测帧率只有16帧左右,请问如何解决?谢谢& w! s) \7 b2 a* q0 o1 k

作者: Lewis    时间: 2014-12-31 17:42
可以将下面的if判断屏蔽,但这样会对c6748的显示有影响,但采集没问题7 z' J- ]  u: K5 A
if(i>=2)3 H  N# @! b( Y6 C  h# [" P) f
  {
: V9 w  q3 f( E; U8 J   VPIFCaptureChanenDisable(SOC_VPIF_0_REGS, VPIF_CHANNEL_1);& |7 Z( ~. B- v4 a% O
   VPIFCaptureChanenDisable(SOC_VPIF_0_REGS, VPIF_CHANNEL_0);2 T; s" Q/ c7 s/ k$ d
   Qdma3();+ o% n# G/ _( [% o: N- c7 ]* f; I
   i=0;
) b1 I' G5 v; P4 a2 r7 [" U: A   /* Enable capture */
/ c2 d+ h3 g2 ~" E. g; }: h, _0 A9 i   VPIFCaptureChanenEnable(SOC_VPIF_0_REGS, VPIF_CHANNEL_0);& m8 ~, K5 [. J% x9 A/ C! W" N
   VPIFCaptureChanenEnable(SOC_VPIF_0_REGS, VPIF_CHANNEL_1);  X# w7 d0 L/ C
  }( A7 L% h$ q# a/ W9 R9 b" ]8 R% }8 f
  i++;! O7 Y' `  }* g) ?/ A

' h; _3 |% B. X& [$ c
作者: bit0rain    时间: 2014-12-31 21:54
Lewis 发表于 2014-12-31 17:42
' ]6 q# o- R+ B  W" m可以将下面的if判断屏蔽,但这样会对c6748的显示有影响,但采集没问题
  o  e! G* _7 g' Qif(i>=2)
4 }' {6 M, v0 R* j6 c' V  {
. n: l) m' \5 b2 _' H
好的,谢谢lewis,我明天试试,新年快乐% \& w* {/ F% q. |. s5 E

作者: bit0rain    时间: 2015-1-3 21:06
基于FaceDetect项目已经将相关的设置改了,按照您说的方法屏蔽掉了Capture那部分代码,帧率提高了,可以到30帧,谢谢
5 |. `9 x8 j0 l6 @" }0 Z9 B9 N
作者: bit0rain    时间: 2015-1-3 21:16
准备结贴了,提高采集帧率可以参考Lewis提供的方法,我是在FaceDetect下修改的,帧率实测达到了30帧。此外需要做算法的兄弟们都希望用灰度,我这里提供一个仅供参考的方法,由于创龙的LCD的屏只支持RGB565的数据,如果用YUV的数据无法在屏幕上直接显示,而做算法的时候一般都需要提取Y分量(灰度),需要对RGB的数据进行转换,这是个比较耗时的工作,对于算法效率有比较大的影响。使用如下方法可以节省进行颜色空间转换的程序:一、设置ov2640的模式为B&W,此时你可以看到LCD的显示变成黑白的了,即ov2640输出灰度图像R=G=B;二、提取任意分量作为算法参考值,G分量有更高的精度,B分量可以使算法更快。这种方法适用于不要求显示彩色图像的场合下,希望对各位有借鉴作用。结贴. d$ y/ n- d3 B

作者: CrazyXiao    时间: 2016-12-1 14:01
@bit0rain。您好,我也想知道配置0v2640的代码。。。还是ciff分辨率rgb565格式的格式?9 f) e# F0 l2 `5 g

作者: CrazyXiao    时间: 2016-12-1 14:02
设置成B&W模式后的数据是什么格式?




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