Arducam 16MP IMX298 only producing 2MP images

I recently bought 8 psc 16MP IMX298 cameras but for some reason the images outputed are max 1600x1200px, but should be 4656,3496. I’m using python to take images, with pygame libery. Code is:

import pygame.camera
import pygame.image
import os

# initialize Pygame
pygame.init()

# initialize Pygame camera
pygame.camera.init()

# get the list of available cameras
cameras = pygame.camera.list_cameras()

os.system('clear')

print("Cameras:", cameras)

# if there are no cameras, exit the script
if not cameras:
    print("No cameras found.")
    exit()

# create a Pygame camera object with the first available camera
camera = pygame.camera.Camera(cameras[0], (4656,3496))

# start capturing images from the camera
camera.start()

# capture an image
image = camera.get_image()

# save the image to a file
pygame.image.save(image, "image.jpg")

# stop capturing images from the camera
camera.stop()

# quit Pygame
pygame.quit()

If anyone knows how to get the full resolution using python, help would be very appreciated!

@Anders

Can you try it with opencv?