def process(self,matrix): lMatrix = matrix matrix = tn.matrix2numpy(matrix.getMatrix()) # hungarian_pairs = self._context["pairs"] # minDim = min(lMatrix._width, lMatrix._height) # m = [array('f',[1.0 for _ in xrange(lMatrix._min)]) for _ in xrange(lMatrix._min)] # clean_matrix = tn.matrix2numpy(m) lClean_matrix = LinedMatrix(lMatrix._min,lMatrix._min, 1.0) # lClean_matrix.convertMatrix(m) # pairs = copy.copy(self._context["pairs"]) pairs = self._context['pairs'] l = pairs[0:lMatrix._min] l.sort() new_pairs = [] for i,j in enumerate(self._context["pairs"]) : if i >= lMatrix._min : break new_j = l.index(j) # clean_matrix[i][new_j] = matrix[i][j] lClean_matrix.set(new_j,i,matrix[i][j]) new_pairs.append(new_j) self._context["pairs"] = new_pairs # lClean_matrix = LinedMatrix(0,0) # lClean_matrix.convertDistMatrix(clean_matrix) return lClean_matrix
def process(self, matrix): lMatrix = matrix matrix = tn.matrix2numpy(matrix.getMatrix()) # hungarian_pairs = self._context["pairs"] # minDim = min(lMatrix._width, lMatrix._height) # m = [array('f',[1.0 for _ in xrange(lMatrix._min)]) for _ in xrange(lMatrix._min)] # clean_matrix = tn.matrix2numpy(m) lClean_matrix = LinedMatrix(lMatrix._min, lMatrix._min, 1.0) # lClean_matrix.convertMatrix(m) # pairs = copy.copy(self._context["pairs"]) pairs = self._context['pairs'] l = pairs[0:lMatrix._min] l.sort() new_pairs = [] for i, j in enumerate(self._context["pairs"]): if i >= lMatrix._min: break new_j = l.index(j) # clean_matrix[i][new_j] = matrix[i][j] lClean_matrix.set(new_j, i, matrix[i][j]) new_pairs.append(new_j) self._context["pairs"] = new_pairs # lClean_matrix = LinedMatrix(0,0) # lClean_matrix.convertDistMatrix(clean_matrix) return lClean_matrix
for yy in auto_corres2[y] : ni = xx + yy*matrix._width matrix.data[ni] = dist # for x in xrange(l1): # seg1 = segLst1[x] # for y in xrange(l2): # ni = x + y*matrix._width # matrix.data[ni] = segmentDistance(seg1, segLst2[y]) # matrix.set(x, y, distance) cpt = 0 if(opt_options.verbose) : name_matrix = os.path.join(path_log,"%s_x_%s%i.png"%(name_png_doc1,name_png_doc2,cpt)) tn.matrix2image(tn.matrix2numpy(matrix.getMatrix()),name_matrix) for f in documentDistanceFilters : cpt += 1 matrix = f(matrix) if(opt_options.verbose) : name_matrix = os.path.join(path_log,"%s_x_%s%i.png"%(name_png_doc1,name_png_doc2,cpt)) print '>>', name_matrix tn.matrix2image(tn.matrix2numpy(matrix.getMatrix()),name_matrix) distance = documentDistance(matrix) if(opt_options.verbose) : print "[ok] distance(%s,%s) = %0.2f "%(document1, document2, distance) lmatrix_docDist.set(i,j,distance) lmatrix_docDist.set(j,i,distance)