'Get img ids that satisfy given filter conditions.
:param imgIds (int array) : get imgs for given ids
:param catIds (int array) : get imgs with all given cats
:return: ids (int array)  : integer array of img ids'

def getImgIds(self, imgIds=[], catIds=[]):

    imgIds = (imgIds if (type(imgIds) == list) else [imgIds])
    catIds = (catIds if (type(catIds) == list) else [catIds])
    if (len(imgIds) == len(catIds) == 0):
        ids = self.imgs.keys()
    else:
        ids = set(imgIds)
        for (i, catId) in enumerate(catIds):
            if ((i == 0) and (len(ids) == 0)):
                ids = set(self.catToImgs[catId])
            else:
                ids &= set(self.catToImgs[catId])
    return list(ids)
