title: opencv error:Sizes of input arguments do not match
body: <p>i m doing image blending using pyramid...
  m getting an opencv error..
  i m following the official opencv tutorials.
  <a href="http://docs.opencv.org/3.0-beta/doc/py_tutorials/py_tutorials.html" rel="nofollow">http://docs.opencv.org/3.0-beta/doc/py_tutorials/py_tutorials.html</a></p>
  
  <pre><code>import cv2
  import numpy as np,sys
  
  A = cv2.imread('/home/grayhat/apple.jpg')
  B = cv2.imread('/home/grayhat/orange.jpg')
  
  # generate Gaussian pyramid for A
  G = A.copy()
  gpA = [G]
  for i in xrange(6):
      G = cv2.pyrDown(G)
      gpA.append(G)
  
  # generate Gaussian pyramid for B
  G = B.copy()
  gpB = [G]
  for i in xrange(6):
      G = cv2.pyrDown(G)
      gpB.append(G)
  
  # generate Laplacian Pyramid for A
  lpA = [gpA[5]]
  for i in xrange(5,0,-1):
     GE = cv2.pyrUp(gpA[i])
     L = cv2.subtract(gpA[i-1],GE)
     lpA.append(L)
  
  # generate Laplacian Pyramid for B
  lpB = [gpB[5]]
  for i in xrange(5,0,-1):
      GE = cv2.pyrUp(gpB[i])
      L = cv2.subtract(gpB[i-1],GE)
      lpB.append(L)
  
  # Now add left and right halves of images in each level
  LS = []
  for la,lb in zip(lpA,lpB):
      rows,cols,dpt = la.shape
      ls = np.hstack((la[:,0:cols/2], lb[:,cols/2:]))
      LS.append(ls)
  
  # now reconstruct
  ls_ = LS[0]
  for i in xrange(1,6):
      ls_ = cv2.pyrUp(ls_)
      ls_ = cv2.add(ls_, LS[i])
  
  # image with direct connecting each half
  real = np.hstack((A[:,:cols/2],B[:,cols/2:]))
  
  cv2.imwrite('Pyramid_blending2.jpg',ls_)
  cv2.imwrite('Direct_blending.jpg',real)
  </code></pre>
  
  <p>following is the error:-</p>
  
  <pre><code>OpenCV Error: Sizes of input arguments do not match (The operation is neither 'array op array' (where arrays have the same size and the same number of channels), nor 'array op scalar', nor 'scalar op array') in arithm_op, file /build/buildd/opencv-2.4.8+dfsg1/modules/core/src/arithm.cpp, line 1287
  Traceback (most recent call last):
    File "programs/test11.py", line 25, in &lt;module&gt;
      L = cv2.subtract(gpA[i-1],GE)
  cv2.error: /build/buildd/opencv-2.4.8+dfsg1/modules/core/src/arithm.cpp:1287: error: (-209) The operation is neither 'array op array' (where arrays have the same size and the same number of channels), nor 'array op scalar', nor 'scalar op array' in function arithm_op
  </code></pre>