'This is total beta - use at your own risk.'

def showCorrespondence(self, otherBlob, side='left'):

    side = side.lower()
    myPts = self.getShapeContext()
    yourPts = otherBlob.getShapeContext()
    myImg = self.image.copy()
    yourImg = otherBlob.image.copy()
    myPts = myPts.reassignImage(myImg)
    yourPts = yourPts.reassignImage(yourImg)
    myPts.draw()
    myImg = myImg.applyLayers()
    yourPts.draw()
    yourImg = yourImg.applyLayers()
    result = myImg.sideBySide(yourImg, side=side)
    data = self.shapeContextMatch(otherBlob)
    mapvals = data[0]
    color = Color()
    for i in range(0, len(self._completeContour)):
        lhs = self._completeContour[i]
        idx = mapvals[i]
        rhs = otherBlob._completeContour[idx]
        if (side == 'left'):
            shift = ((rhs[0] + yourImg.width), rhs[1])
            result.drawLine(lhs, shift, color=color.getRandom(), thickness=1)
        elif (side == 'bottom'):
            shift = (rhs[0], (rhs[1] + myImg.height))
            result.drawLine(lhs, shift, color=color.getRandom(), thickness=1)
        elif (side == 'right'):
            shift = ((rhs[0] + myImg.width), rhs[1])
            result.drawLine(lhs, shift, color=color.getRandom(), thickness=1)
        elif (side == 'top'):
            shift = (lhs[0], (lhs[1] + myImg.height))
            result.drawLine(lhs, shift, color=color.getRandom(), thickness=1)
    return result
