Skip to content

Picture Quality T20 jxf23

Lu-Fi edited this page Oct 19, 2026 · 1 revision

T20 / JX-F23: vendor vs open stack (2026-10-19)

Setup

  • SoC T20X, sensor SOI JX-F23 (1920x1080), kernel 3.10.14, uClibc.
  • Open: open-tx-isp 56229bf4 (isp_clk=100000000) + OpenIMP 26dbdebe, timps (OpenIMP flavour, current).
  • Vendor: Ingenic tx-isp-t20.ko + JX-F23 sensor module (vendor build) + Ingenic libimp 3.12.0 (uclibc), timps USE_OPENIMP=0 (older build, 2026-10-11). Runtime load after a reboot, nothing flashed.
  • Same camera and position, daylight, outdoor fog, day mode (colour). Captures 2 minutes apart (open before and after).
  • Sensor test pattern: no test-pattern register known for the JX-F23 (0x0C bit 0 has no effect) - no pattern comparison.

Results (scene, numbers only)

Metric vendor JPEG open JPEG vendor H.264 open H.264
mean Y / U / V 123.2 / 125.6 / 127.0 116.7 / 126.0 / 126.8 123.2 / 125.3 / 126.8 117.7 / 126.3 / 126.8
saturation (whole frame) 9.1 9.8 9.1 9.6
Y p1..p99 14..246 21..237 24..246 21..240
red-brown wall U/V (sat) 126.8 / 131.3 (5.2) 126.1 / 131.7 (5.1)
green hedge U/V (sat) 119.0 / 125.2 (9.9) 117.3 / 125.1 (11.4)
red flower U/V (sat) 116.6 / 147.6 (23.1) 116.4 / 148.1 (23.5)
sharpness (Laplacian variance) 2493 1572 1322 1494
noise (flat blocks) 8.08 2.31 0.78 0.63

Open-before and open-after runs agree within 1 % (repeatability).

Format markers:

vendor open
JPEG no JFIF APP0; full range, BT.601 assumed JFIF APP0, full range, BT.601
H.264 VUI no video_signal_type no colour description

Assessment

  • Colour: red and green hues and saturation match the vendor within 1-2 code values; green is slightly more saturated on open.
  • Brightness: open about 5 % darker (mean Y 117 vs 123), slightly less contrast (p1..p99 21..237 vs 14..246).
  • Vendor JPEG is much sharper and noisier (higher JPEG quality plus stronger sharpening); in H.264 the difference is small (open even slightly sharper). Open JPEG quality/sharpening could move closer to the vendor.

Open points

  • JPEG quality setting vs vendor (file size 290 KB open vs 390 KB vendor at the same resolution).
  • AE target: open slightly darker.

Encoder test pattern (open stack, synthetic source)

The frame source hands a synthetic NV12 pattern (grey ramps, 32 px checkerboard 16/235, eight colour bars) to the encoders (OpenIMP OPENIMP_TEST_PATTERN=1, test hook, off by default). The stream is decoded on the host and compared with the ideal picture. The vendor libimp has no frame injection, so only the open side is measured. T20-jxf23-encoder-pattern.png.

Stream PSNR Y PSNR U/V SSIM Y bar colour error checker 16/235
H.264 1920x1080 54.1 73.7/73.7 0.9975 0 15.8/235.0
H.264 640x360 52.9 68.9/68.9 0.9968 0 15.8/235.0
H.264 320x240 51.6 65.1/64.0 0.9957 0 15.8/235.0
JPEG 640x360 55.4 53.1/52.0 0.9979 -1 at U/V 16/34 exact
JPEG 320x240 53.5 48.7/48.3 0.9967 -1 same exact

The frame layout is plain NV12 (pitch 16-aligned), no tiling. H.264 has no VUI.

Open Ingenic camera stack: open-tx-isp

Clone this wiki locally