Skip to content

Commit cf7cb1c

Browse files
GRATTINSTMGitHub Enterprise
authored andcommitted
Update to v2.2.0
- Update Camera Middleware to v1.5.0, adding VD1943 support - Update Cube FW to v1.3.0 - Update STEdgeAI to v3.0.0 - Switch to STEdgeAI `st-ai` API
1 parent b01b904 commit cf7cb1c

5,157 files changed

Lines changed: 1539737 additions & 1015277 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Application/NUCLEO-N657X0-Q/Inc/app_config.h

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,6 @@
2929
#define ASPECT_RATIO_FULLSCREEN (3) /* Resize camera image to NN input size and display a maximized image. See Doc/Build-Options.md#aspect-ratio-mode */
3030
#define ASPECT_RATIO_MODE ASPECT_RATIO_FULLSCREEN
3131

32-
#define NN_WIDTH 96
33-
#define NN_HEIGHT 96
34-
#define NN_BPP 3
35-
3632
#define COLOR_BGR (0)
3733
#define COLOR_RGB (1)
3834
#define COLOR_MODE COLOR_RGB

Application/NUCLEO-N657X0-Q/Inc/cmw_camera_conf.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@ extern "C" {
3636
#define USE_IMX335_SENSOR
3737
#define USE_VD66GY_SENSOR
3838
#define USE_VD55G1_SENSOR
39+
#define USE_VD1943_SENSOR
40+
#define USE_OV5640_SENSOR
3941

4042
#ifdef __cplusplus
4143
}
Lines changed: 135 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,135 @@
1+
/**
2+
******************************************************************************
3+
* @file imx335_isp_param_conf.h
4+
* @author AIS Application Team
5+
* @brief Header file for IQT parameters of the ISP middleware.
6+
******************************************************************************
7+
* @attention
8+
*
9+
* Copyright (c) 2025 STMicroelectronics.
10+
* All rights reserved.
11+
*
12+
* This software is licensed under SLA0044 terms that can be found here:
13+
* https://www.st.com/resource/en/license_agreement/SLA0044.txt
14+
*
15+
* THIS FILE WAS GENERATED BY THE STM32 ISP IQTune ON 2025-01-28 11:45:25
16+
*
17+
******************************************************************************
18+
*/
19+
20+
/* Define to prevent recursive inclusion -------------------------------------*/
21+
#ifndef __IMX335_ISP_PARAM_CONF__H
22+
#define __IMX335_ISP_PARAM_CONF__H
23+
24+
/* DCMIPP ISP configuration for IMX335 sensor */
25+
static const ISP_IQParamTypeDef ISP_IQParamCacheInit_IMX335 = {
26+
.sensorGainStatic = {
27+
.gain = 0,
28+
},
29+
.sensorExposureStatic = {
30+
.exposure = 0,
31+
},
32+
.AECAlgo = {
33+
.enable = 1,
34+
.exposureCompensation = EXPOSURE_TARGET_0_0_EV,
35+
.antiFlickerFreq = ANTIFLICKER_NONE,
36+
},
37+
.statRemoval = {
38+
.enable = 0,
39+
.nbHeadLines = 0,
40+
.nbValidLines = 0,
41+
},
42+
.badPixelStatic = {
43+
.enable = 0,
44+
.strength = 0,
45+
},
46+
.badPixelAlgo = {
47+
.enable = 0,
48+
.threshold = 0,
49+
},
50+
.blackLevelStatic = {
51+
.enable = 1,
52+
.BLCR = 12,
53+
.BLCG = 12,
54+
.BLCB = 12,
55+
},
56+
.demosaicing = {
57+
.enable = 1,
58+
.type = ISP_DEMOS_TYPE_RGGB,
59+
.peak = 2,
60+
.lineV = 4,
61+
.lineH = 4,
62+
.edge = 6,
63+
},
64+
.ispGainStatic = {
65+
.enable = 0,
66+
.ispGainR = 0,
67+
.ispGainG = 0,
68+
.ispGainB = 0,
69+
},
70+
.colorConvStatic = {
71+
.enable = 0,
72+
.coeff = { { 0, 0, 0, }, { 0, 0, 0, }, { 0, 0, 0, }, }
73+
},
74+
.AWBAlgo = {
75+
.enable = 1,
76+
.label = { "JudgeII-A", "JudgeII-TL84", "JudgeII-DAY", "Free Slot", "Free Slot", },
77+
.referenceColorTemp = { 2810, 4015, 6650, 0, 0, },
78+
.ispGainR = { 124000000, 182000000, 244000000, 0, 0, },
79+
.ispGainG = { 100000000, 100000000, 100000000, 0, 0, },
80+
.ispGainB = { 282000000, 212000000, 143000000, 0, 0, },
81+
.coeff = {
82+
{ { 82450000, 90560000, -73010000, }, { -65469999, 181020000, -15559999, }, { -30490000, -52940000, 183430000, }, },
83+
{ { 164670000, -20970000, -43700000, }, { -51330000, 178670000, -27339999, }, { -12490000, -48170000, 160670000, }, },
84+
{ { 150570000, 2440000, -53010000, }, { -37350000, 193760000, -56420000, }, { -11100000, -35490000, 146590000, }, },
85+
{ { 0, 0, 0, }, { 0, 0, 0, }, { 0, 0, 0, }, },
86+
{ { 0, 0, 0, }, { 0, 0, 0, }, { 0, 0, 0, }, },
87+
},
88+
.referenceRGB = {
89+
{ 61, 65, 30},
90+
{ 46, 68, 37 },
91+
{ 38, 68, 49 },
92+
{ 0, 0, 0 },
93+
{ 0, 0, 0 },
94+
},
95+
},
96+
.contrast = {
97+
.enable = 0,
98+
.coeff.LUM_0 = 0,
99+
.coeff.LUM_32 = 0,
100+
.coeff.LUM_64 = 0,
101+
.coeff.LUM_96 = 0,
102+
.coeff.LUM_128 = 0,
103+
.coeff.LUM_160 = 0,
104+
.coeff.LUM_192 = 0,
105+
.coeff.LUM_224 = 0,
106+
.coeff.LUM_256 = 0,
107+
},
108+
.statAreaStatic = {
109+
.X0 = 648,
110+
.Y0 = 486,
111+
.XSize = 1296,
112+
.YSize = 972,
113+
},
114+
.gamma = {
115+
.enable = 1,
116+
},
117+
.sensorDelay = {
118+
.delay = 3,
119+
},
120+
.luxRef = {
121+
.HL_LuxRef = 1050,
122+
.HL_Expo1 = 5000,
123+
.HL_Lum1 = 20,
124+
.HL_Expo2 = 33266,
125+
.HL_Lum2 = 117,
126+
.LL_LuxRef = 270,
127+
.LL_Expo1 = 9000,
128+
.LL_Lum1 = 10,
129+
.LL_Expo2 = 33266,
130+
.LL_Lum2 = 36,
131+
.calibFactor = 0.905f,
132+
},
133+
};
134+
135+
#endif /* __IMX335_ISP_PARAM_CONF__H */

Application/NUCLEO-N657X0-Q/Inc/isp_param_conf.h

Lines changed: 6 additions & 192 deletions
Original file line numberDiff line numberDiff line change
@@ -12,210 +12,24 @@
1212
* This software is licensed under SLA0044 terms that can be found here:
1313
* https://www.st.com/resource/en/license_agreement/SLA0044.txt
1414
*
15-
* THIS FILE WAS GENERATED BY THE IQ TUNING TOOL ON 2023-10-11 15:25:40
16-
*
1715
******************************************************************************
1816
*/
1917

2018
/* Define to prevent recursive inclusion -------------------------------------*/
2119
#ifndef __ISP_PARAM_CONF__H
2220
#define __ISP_PARAM_CONF__H
21+
2322
#include "app_config.h"
2423
#include "cmw_camera.h"
2524

26-
/* DCMIPP ISP configuration for IMX335 sensor */
27-
static const ISP_IQParamTypeDef ISP_IQParamCacheInit_IMX335 = {
28-
.sensorGainStatic = {
29-
.gain = 0,
30-
},
31-
.sensorExposureStatic = {
32-
.exposure = 0,
33-
},
34-
.AECAlgo = {
35-
.enable = 1,
36-
.exposureCompensation = EXPOSURE_TARGET_0_0_EV,
37-
.antiFlickerFreq = 0,
38-
},
39-
.statRemoval = {
40-
.enable = 0,
41-
.nbHeadLines = 0,
42-
.nbValidLines = 0,
43-
},
44-
.badPixelStatic = {
45-
.enable = 0,
46-
.strength = 0,
47-
},
48-
.badPixelAlgo = {
49-
.enable = 0,
50-
.threshold = 0,
51-
},
52-
.blackLevelStatic = {
53-
.enable = 1,
54-
.BLCR = 12,
55-
.BLCG = 12,
56-
.BLCB = 12,
57-
},
58-
.demosaicing = {
59-
.enable = 1,
60-
.type = ISP_DEMOS_TYPE_RGGB,
61-
.peak = 2,
62-
.lineV = 4,
63-
.lineH = 4,
64-
.edge = 6,
65-
},
66-
.ispGainStatic = {
67-
.enable = 0,
68-
.ispGainR = 0,
69-
.ispGainG = 0,
70-
.ispGainB = 0,
71-
},
72-
.colorConvStatic = {
73-
.enable = 0,
74-
.coeff = { { 0, 0, 0, }, { 0, 0, 0, }, { 0, 0, 0, }, }
75-
},
76-
.AWBAlgo = {
77-
.enable = 1,
78-
.id = { "JudgeII-A", "JudgeII-TL84", "JudgeII-DAY", "Free Slot", "Free Slot", },
79-
.referenceColorTemp = { 2810, 4015, 6650, 0, 0, },
80-
.ispGainR = { 137000000, 182000000, 244000000, 0, 0, },
81-
.ispGainG = { 100000000, 100000000, 100000000, 0, 0, },
82-
.ispGainB = { 287000000, 212000000, 143000000, 0, 0, },
83-
.coeff = {
84-
{ { 159760000, -9780000, -49990000, }, { -45530000, 171540000, -26000000, }, { -3300000, -110120000, 213430000, }, },
85-
{ { 164670000, -20970000, -43700000, }, { -51330000, 178670000, -27339999, }, { -12490000, -48170000, 160670000, }, },
86-
{ { 150570000, 2440000, -53010000, }, { -37350000, 193760000, -56420000, }, { -11100000, -35490000, 146590000, }, },
87-
{ { 0, 0, 0, }, { 0, 0, 0, }, { 0, 0, 0, }, },
88-
{ { 0, 0, 0, }, { 0, 0, 0, }, { 0, 0, 0, }, },
89-
},
90-
},
91-
.contrast = {
92-
.enable = 0,
93-
.coeff.LUM_0 = 0,
94-
.coeff.LUM_32 = 0,
95-
.coeff.LUM_64 = 0,
96-
.coeff.LUM_96 = 0,
97-
.coeff.LUM_128 = 0,
98-
.coeff.LUM_160 = 0,
99-
.coeff.LUM_192 = 0,
100-
.coeff.LUM_224 = 0,
101-
.coeff.LUM_256 = 0,
102-
},
103-
.statAreaStatic = {
104-
.X0 = 648,
105-
.Y0 = 486,
106-
.XSize = 1296,
107-
.YSize = 972,
108-
},
109-
.gamma = {
110-
.enable = 1,
111-
},
112-
.sensorDelay = {
113-
.delay = 3,
114-
},
115-
};
116-
#if CAMERA_FLIP == CMW_MIRRORFLIP_NONE
117-
#define BAYER_TYPE ISP_DEMOS_TYPE_GRBG
118-
#elif CAMERA_FLIP == CMW_MIRRORFLIP_FLIP
119-
#define BAYER_TYPE ISP_DEMOS_TYPE_BGGR
120-
#elif CAMERA_FLIP == CMW_MIRRORFLIP_MIRROR
121-
#define BAYER_TYPE ISP_DEMOS_TYPE_RGGB
122-
#elif CAMERA_FLIP == CMW_MIRRORFLIP_FLIP_MIRROR
123-
#define BAYER_TYPE ISP_DEMOS_TYPE_GBRG
124-
#endif
125-
/* DCMIPP ISP configuration for VD66GY sensor */
126-
static const ISP_IQParamTypeDef ISP_IQParamCacheInit_VD66GY = {
127-
.sensorGainStatic = {
128-
.gain = 0,
129-
},
130-
.sensorExposureStatic = {
131-
.exposure = 0,
132-
},
133-
.AECAlgo = {
134-
.enable = 1,
135-
.exposureCompensation = EXPOSURE_TARGET_0_0_EV,
136-
.antiFlickerFreq = 0,
137-
},
138-
.statRemoval = {
139-
.enable = 0,
140-
.nbHeadLines = 0,
141-
.nbValidLines = 0,
142-
},
143-
.badPixelStatic = {
144-
.enable = 0,
145-
.strength = 0,
146-
},
147-
.badPixelAlgo = {
148-
.enable = 0,
149-
.threshold = 0,
150-
},
151-
.blackLevelStatic = {
152-
.enable = 1,
153-
.BLCR = 16,
154-
.BLCG = 16,
155-
.BLCB = 16,
156-
},
157-
.demosaicing = {
158-
.enable = 1,
159-
.type = BAYER_TYPE,
160-
.peak = 2,
161-
.lineV = 4,
162-
.lineH = 4,
163-
.edge = 6,
164-
},
165-
.ispGainStatic = {
166-
.enable = 0,
167-
.ispGainR = 0,
168-
.ispGainG = 0,
169-
.ispGainB = 0,
170-
},
171-
.colorConvStatic = {
172-
.enable = 0,
173-
.coeff = { { 0, 0, 0, }, { 0, 0, 0, }, { 0, 0, 0, }, }
174-
},
175-
.AWBAlgo = {
176-
.enable = 1,
177-
.id = { "JudgeII-A", "JudgeII-TL84", "JudgeII-DAY", "", "", },
178-
.referenceColorTemp = { 2750, 4150, 6750, 0, 0, },
179-
.ispGainR = { 95000000, 117000000, 156000000, 0, 0, },
180-
.ispGainG = { 100000000, 100000000, 100000000, 0, 0, },
181-
.ispGainB = { 238000000, 189000000, 150000000, 0, 0, },
182-
.coeff = {
183-
{ { 133939999, -20660000, -31280000, }, { -37890000, 149680000, -26179999, }, { 2040000, -89240000, 221830000, }, },
184-
{ { 147680000, -38330000, -29360000, }, { -40320000, 146010000, -31400000, }, { 1100000, -61240000, 174790000, }, },
185-
{ { 146010000, -39280000, -14060000, }, { -26750000, 152490000, -42520000, }, { 1160000, -55410000, 143910000, }, },
186-
{ { 0, 0, 0, }, { 0, 0, 0, }, { 0, 0, 0, }, },
187-
{ { 0, 0, 0, }, { 0, 0, 0, }, { 0, 0, 0, }, },
188-
},
189-
},
190-
.contrast = {
191-
.enable = 0,
192-
.coeff.LUM_0 = 0,
193-
.coeff.LUM_32 = 0,
194-
.coeff.LUM_64 = 0,
195-
.coeff.LUM_96 = 0,
196-
.coeff.LUM_128 = 0,
197-
.coeff.LUM_160 = 0,
198-
.coeff.LUM_192 = 0,
199-
.coeff.LUM_224 = 0,
200-
.coeff.LUM_256 = 0,
201-
},
202-
.statAreaStatic = {
203-
.X0 = 140,
204-
.Y0 = 341,
205-
.XSize = 840,
206-
.YSize = 682,
207-
},
208-
.gamma = {
209-
.enable = 1,
210-
},
211-
.sensorDelay = {
212-
.delay = 4,
213-
},
214-
};
25+
#include "imx335_isp_param_conf.h"
26+
#include "vd66gy_isp_param_conf.h"
27+
#include "vd1943_isp_param_conf.h"
21528

21629
static const ISP_IQParamTypeDef* ISP_IQParamCacheInit[] = {
21730
&ISP_IQParamCacheInit_IMX335,
218-
&ISP_IQParamCacheInit_VD66GY
31+
&ISP_IQParamCacheInit_VD66GY,
32+
&ISP_IQParamCacheInit_VD1943
21933
};
22034

22135
#endif /* __ISP_PARAM_CONF__H */

0 commit comments

Comments
 (0)