title: OpenNI and OpenCV: cv2.imshow() crashes with error: (-215:Assertion failed) dst.data == (uchar*)dst_ptr in function 'cvShowImage'
body: <p>I am trying to receive a depth image from an Orbbec Astra Pro camera connected to a Windows 10 machine. I have therfor installed <code>opencv-python 4.0.0.21</code> and <code>primesense 2.2.0.30.post5</code> which seems to be latest stable python packages available. </p>
  
  <p>This is the code snippet I am experimenting with: </p>
  
  <pre><code>import numpy as np
  import cv2
  from primesense import openni2
  from primesense import _openni2 as c_api
  
  openni2.initialize("./OpenNI-Windows-x64-2.3/Redist")    
  
  if openni2.is_initialized():
      print('openni2 ready')
  else:
      print('openni2 not ready')
  
  dev = openni2.Device.open_any()
  
  depth_stream = dev.create_depth_stream()
  depth_stream.set_video_mode(c_api.OniVideoMode(pixelFormat = c_api.OniPixelFormat.ONI_PIXEL_FORMAT_DEPTH_100_UM, resolutionX = 640, resolutionY = 480, fps = 30))
  depth_stream.start()
  
  while(True):
      frame = depth_stream.read_frame()
      frame_data = frame.get_buffer_as_uint16()
      img = np.frombuffer(frame_data, dtype=np.uint16)
      img.shape = (1, 480, 640)
      img = np.concatenate((img, img, img), axis=0)
      img = np.swapaxes(img, 0, 2)
      img = np.swapaxes(img, 0, 1)
  
      cv2.imshow("image", img)
      cv2.waitKey(34)
  
  depth_stream.stop()
  openni2.unload()
  </code></pre>
  
  <p>However when <code>cv2.imshow()</code> is getting called I am receiving:</p>
  
  <blockquote>
    <p>cv2.error: OpenCV(4.0.0)
    C:\projects\opencv-python\opencv\modules\highgui\src\window_w32.cpp:1230:
    error: (-215:Assertion failed) dst.data == (uchar*)dst_ptr in function
    'cvShowImage'</p>
  </blockquote>
  
  <p>I have no idea on how to convert an OpenNI frame to an OpenCV mat data structure and why <code>cv2.imshow()</code> refuses to show an image. OpenNI seems to correctly initialize, at least it prints <code>openni2 ready</code>... What am I doing wrong here? </p>
  
  <hr>
  
  <p><strong>Edit</strong></p>
  
  <p>This seems to be a bug which I have reported here <a href="https://github.com/skvark/opencv-python/issues/167" rel="nofollow noreferrer">https://github.com/skvark/opencv-python/issues/167</a></p>
  
  <hr>
  
  <p><strong>Solution (kind of)</strong></p>
  
  <p>Downgrading OpenCV version to the latest 3.x release made it work! </p>
  
  <p><code>pip install --upgrade opencv-python==3.4.5.20</code> </p>