P
purdonjack

  • Jul 27, 2023
  • Joined Apr 14, 2023
  • 0 best answers
  • jakaskerl Hey Jakaskerl,

    Thanks for the reply. I'm in the process of giving the intel 8300us tuning blob a go. If that doesn't work i'll get back in touch - I guess we were going for 5000 us, but if that fails then we're stuck since the tuning is proprietary.

    Thanks Jaka, Jack.

  • Hey Luxonis Team!
    Had an extensive look through the forum and can't seem to find a workaround for this problem.

    I have my camera deployed indoors and want to set the shutter speed (exposure) as low as possible so that my video frames are crisp. I.e. the goal is so that I can reduce motion blur (we take screenshots of things happening in frames).

    Because I have a manually set exposure (as low as possible), my ISO also has to be set manually. This means that sometimes my object detection does not work at all because the camera feed gets completely washed out.

    Any ideas on how I could work around this problem? Loving the luxonis other than this!!

    Jack.

    • jakaskerl Hey Jakaskerl! Thanks for the reply mate. I really appreciate it.
      Yep I can. Don't have my hands on an RPI right at this second but I will get back to you either tomorrow or the next day.
      I'll try recreate it using ur rbg camera example.
      For what it's worth, here's whats causing the error for me (only in docker on the RPI or Jetson).

      def main():
          # We start both of these processes within the same file since neither can be pickled properly.
          args = parseArgs()
          config = ELEServerConfig(args)
      
          luxonisPipelineQueue = multiprocessing.Queue()
      
          if not config.disableLuxonis:
              luxonisPipelineProcess = multiprocessing.Process(
                  target=startLuxonisPipeline,
                  args=(config, luxonisPipelineQueue),
              )
              luxonisPipelineProcess.start()

      Then the startLuxonisPipeline is pretty standard.

         def start(self):
              print("### STARTING LUXONIS ###")
      
              with dai.Device(self.pipeline) as device:
                  if self.config.debug:
                      device.setLogLevel(dai.LogLevel.DEBUG)
                      device.setLogOutputLevel(dai.LogLevel.DEBUG)
                  device.startPipeline()
                  frameSynchroniser = FrameSynchroniser(len(enabledPipelineStreams))
                  dataCollector = DataCollector(config=self.config)
              
                  # Do some stuff with queues etc.
    • jakaskerl Hey Jakaskerl - would you have any suggestions on how to fix this problem? I've got it working without running the the Luxonis in a Process. it makes me think that for some reason the USB permissions are not being shared from Parent to Child properly.
      Any advice?
      Thanks!! Jack

      • Select the tag above (via "Choose tag"). If you need help from Luxonis, select "Support".

        Hi All!
        Just following up on this (we originally chatted on Discord).

        I recently found out that running the Luxonis in a Python multiprocessing.Process means that on a raspberry PI and a jetson, the luxonis cannot be found. I had to move it to the main Process (and put other processes into a multiprocessing.Process).

        Just thought i'd share this since I looked for quite a while to solve this.

        Jack (Loving the Luxonis stuff!!!).

      • Watching this one - had exactly the same problem Raveena.