ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    AR0144 RGB output on VOXL2

    Image Sensors
    2
    24
    555
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      Jordyn Heil @Alex Kushleyev
      last edited by

      @Alex-Kushleyev, great! If there are no conflicts in communication, I'd still like to move forward with buying them as soon as possible, so just let me know what I need to do to purchase them.

      If I'm trying to do full 360 panoramic stitching with four of these sensors, will the fisheye lens distortion drastically impact the efficacy of doing a seamless stitch (particularly with the discoloration from lack of an RGB LSC)?

      Alex KushleyevA 1 Reply Last reply Reply Quote 0
      • Alex KushleyevA
        Alex Kushleyev ModalAI Team @Jordyn Heil
        last edited by Alex Kushleyev

        @Jordyn-Heil , for ordering, since it's a custom order, please send us a message via http://modalai.com/contact and provide the following part number. We will send you an invoice.

        MSU-M0166-2-01
        
        (which includes MCCA-M0166-2 + M10000858 lens (AR0144 Camera Color Coax))
        

        Do you want to wait until I confirm 4x concurrency?

        Regarding panoramic stitching, yes obviously lens shading will be an issue, however if you have 4 cameras, you only need 90 degrees of horizontal FOV per camera and the current lens provides 139 degrees of horizontal FOV (https://docs.modalai.com/M0166/). So i think 90 degrees + small overlap won't be too bad (but LSC correction will be required to achieve seamless stitching)
        . Also, the VOXL2 GPU can do the stitching, I can help you get started (should be a fun project).

        Here is an old example i found of original vs LSC corrected monochrome images:

        original:
        1_ar0144_no_lsc.png

        LSC corrected:
        3_sw_lsc.png

        You see the corners are heavily quantized because they were so dark and pixel resolution is not enough. The original RAW image is 8 bit. The AR0144 camera does support 10 and 12 bit output, and the 12 bit data would help a lot with Quantization effects after correction. the 10 and 12 bit stream is experimental and there are some issues (will not go into detail here), that is why we using 8 bit, which is stable.

        Alex

        Alex KushleyevA 1 Reply Last reply Reply Quote 0
        • Alex KushleyevA
          Alex Kushleyev ModalAI Team @Alex Kushleyev
          last edited by

          One more thing.. Do you need global shutter cameras? or is a small size a requirement? You could use the IMX412 cameras, which are rolling shutter, but much higher resolution and color quality. Have you considered that option?

          Alex

          J 1 Reply Last reply Reply Quote 0
          • J
            Jordyn Heil @Alex Kushleyev
            last edited by

            @Alex-Kushleyev, thanks for the photos! Yes, global shutter and small size are requirements, so I think the color AR0144s are my best option, but I'll wait to order until you confirm 4x concurrency.

            Also, if you can help me get started with using the VOXL2 GPU for panoramic stitching, that would be awesome! Thanks for all your help!

            Alex KushleyevA 1 Reply Last reply Reply Quote 0
            • Alex KushleyevA
              Alex Kushleyev ModalAI Team @Jordyn Heil
              last edited by

              Hi @Jordyn-Heil ,

              OK, so did some digging. Essentially, the 4x AR0144 + 1x IMX412 would be the same as C27 config (https://docs.modalai.com/voxl2-coax-camera-bundles/#mdk-m0173-1-02) + another AR0144 connected to J8 via M0155 (so that would be J8L, camera slot 4).

              There are also some other options like moving IMX412 to J8, but in either case, unfortunately there is a change required in one of the AR0144 to switch the i2c slave address from default. This means moving a resistor on the camera from one pad to another.

              I am going to double check this by actually switching the slave ID, but just wanted to give you an update..

              Alex

              Alex KushleyevA 1 Reply Last reply Reply Quote 0
              • Alex KushleyevA
                Alex Kushleyev ModalAI Team @Alex Kushleyev
                last edited by

                OK, I was able to confirm this configuration:

                • VOXL2
                • M0173 + 3x AR0144 + 1x IMX412 (C27 config)
                • M0155 + 1x AR0144 plugged into J8
                  • AR0144 i2c slave id change via resistor
                  • small camera driver modification for new slave id
                • also verified the synchronization between the 4 AR0144

                The resistor swap was relatively easy, but i used a special "tweezer" soldering iron tip. I can be difficult without the right tools.. Let me check if we can do a swap for the custom order..

                See the image with marked slave id select resistor that needs to move to a pad right above the current placement. It can be a bit tricky to do it 🙂

                m0166_slave_id_change_resistor.png

                Alex

                Alex KushleyevA 1 Reply Last reply Reply Quote 0
                • Alex KushleyevA
                  Alex Kushleyev ModalAI Team @Alex Kushleyev
                  last edited by

                  Here are two image samples taking using IMX412 and AR0144. IMX412 is slightly cropped on the sides, but it's also a slightly narrower lens. AR0144 image is without LSC correction. Also images slightly out of focus because the test pattern is very close to the camera. The brightness in the IMX412 image is more evenly distributed (larger, better lens), so the center of the image is not over-exposed, unlike the AR0144. This should be corrected with the proper LSC..

                  IMX412
                  imx412_color_sample.png

                  AR0144-color
                  ar0144_color_sample.png

                  J 1 Reply Last reply Reply Quote 0
                  • J
                    Jordyn Heil @Alex Kushleyev
                    last edited by

                    @Alex-Kushleyev, I just got the color AR0144s and was wondering what changes I need to make to the config file to get the RGB output from the AR0144s. I chose configuration 27, but when I open the stream in the VOXL web portal, I only get monochrome streams from the AR0144.

                    Alex KushleyevA 1 Reply Last reply Reply Quote 0
                    • Alex KushleyevA
                      Alex Kushleyev ModalAI Team @Jordyn Heil
                      last edited by Alex Kushleyev

                      @Jordyn-Heil , you will need to use a recent version of voxl-camera-server (you can build it from dev or get a package from the nightly builds).

                      Then edit the camera server config file (/etc/modalai/voxl-camera-server.conf) and replace the camera type ar0144 with ar0144-color. If you get an error (unknown camera type), it means you are using older version of camera server.

                      Currently, the debayering is happening on the CPU.

                      Here is the place where processing is happening for the color version of AR0144. https://gitlab.com/voxl-public/voxl-sdk/services/voxl-camera-server/-/blob/dev/src/hal3_camera_mgr.cpp?ref_type=heads#L1477

                      • debayer from GRBG to RGB
                      • run AWB (auto white balance)
                      • run AE (auto exposure)
                      • send out RGB, grey, and original raw bayer frames

                      Please try it out.

                      Alex

                      J 1 Reply Last reply Reply Quote 0
                      • J
                        Jordyn Heil @Alex Kushleyev
                        last edited by

                        @Alex-Kushleyev, building from the dev branch worked great, thanks!

                        On a separate note, for my application, I will need the coax cables connecting the cameras to be slightly longer. Do you all make longer cables, or are you aware of any other suppliers that make longer versions of these cables?
                        Screenshot 2025-07-08 at 10.28.36 AM-min.png

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post
                        Powered by NodeBB | Contributors