Zum Inhalt springen

WSAL18154 – 25mm Telephoto Lens for Pi/en

Aus JW Tech Wiki

Documentation notice: This technical documentation was independently rewritten from an archived supplier source. Check technical details and commands against the product version and manufacturer documentation before use.

Summary

Technical overview of the Waveshare 25mm CS lens system and its use with the IMX477 12.3MP camera or Raspberry Pi HQ Camera.

Related products at JW Tech

Technical overview

  • The 25mm telephoto lens is a CS/C lens that must be paired with a compatible camera module.
  • Compatible cameras per source: IMX477 12.3MP Camera and Raspberry Pi HQ Camera.
  • Lens format: 1 inch; aperture range F1.4–F16; CS-mount connector.
  • Field of view (FoV) on a 1-inch sensor: approximately 44.6° × 33.6°.
  • Back focal length (BFL): 17.53 mm; total track length (TTL): 67.53 mm.
  • Distortion values by sensor size: 1 inch −0.7%; 1/2 inch −0.5%; 1/3 inch −0.15%.
  • Minimum object distance (M.O.D.): 0.20 m.
  • Dimensions: Φ39.00 × 50.00 mm; weight: 133.7 g.
  • Aperture adjustment is manual via the ring on the lens body.
  • The page includes an OpenCV white-balance correction code as a reference example.

Commands and examples – verify before use: 

import picamera
import picamera.array
import cv2
from time import sleep
import numpy as np
def test_gcamera():
    cv2.namedWindow("img",0)
    with picamera.PiCamera() as camera:
        camera.resolution = (1920, 1080)
        camera.awb_mode = 'off'
        rg, bg = (1.8, 1.4)
        camera.awb_gains = (rg, bg)
        with picamera.array.PiRGBArray(camera) as output:
            for foo in camera.capture_continuous(output, 'rgb', use_video_port=True):
                img = cv2.cvtColor(output.array, cv2.COLOR_RGB2BGR)
                cv2.imshow("img", img)
                cv2.waitKey(1)
                cv2.imwrite("test.jpg",img)
                r, g, b = (np.mean(output.array[..., i]) for i in range(3)
                if abs(r - g) > 2:
                    if r > g:
                        rg -= 0.1
                    else:
                        rg += 0.1
                if abs(b - g) > 1:
                    if b > g:
                        bg -= 0.1
                    else:
                        bg += 0.1
                camera.awb_gains = (rg, bg)
                output.seek(0)
                output.truncate(0)
if __name__=="__main__":
    test_gcamera()

Notes and version constraints

  • The source contains template placeholders such as {{{name4}}} and {{{userDefinedInfo}}}; these are incomplete and were ignored.
  • The stated compatibility (IMX477 / HQ Camera) comes directly from the source; other combinations are not confirmed.
  • The OpenCV white-balance function was shared by RPi Camera (G) users and serves only as a reference; it is not an official lens specification.
  • No information on price, stock, warranty, or certifications is present in the source; such details must not be added.

Source and revision record