示例#1
0
def rif(idir, xdir):
   print(idir)
   print(xdir)
   xmls = os.listdir(xdir)
   total_repaired = 0
   for xmlname in xmls:
      imname = os.path.join(idir, xmlname.replace('_car.xml', '.png'))
      xmlname = os.path.join(xdir, xmlname)
      img = cv2.imread(imname)
      h,w,_ = img.shape
      points,skpd = serialize.xml_to_points(xmlname)
      for p in points: total_repaired += repair(p['coords'], h, w)
      xml = serialize.points_to_xml(points,skpd)
      print(xml, file=open(xmlname, 'w'))
   print('{} repaired in {} files'.format(total_repaired, len(xmls)))
示例#2
0
import time
import copy

sys.path.append('../')
import serialize
import plot
import print2forum

get_stat_l = lambda f: [
   {
      'position': {'x':p['coords']['ix'],'y':p['coords']['iy']},
      'width' : abs(p['coords']['ix'] - p['coords']['x']),
      'height': abs(p['coords']['iy'] - p['coords']['y']),
      'class' : p['class']
   }
   for p in serialize.xml_to_points(f)[0]
]
flatten = lambda l: [el for sl in l for el in sl]

def get_points_for_dir(dname):
   points = []
   try:
      for root, dirs, files in os.walk(dname):
         if any( v in root for v in ['Datacam','nuviCam']): continue
         if dirs:
            points.extend(
               flatten(list(
                  map(
                     get_points_for_dir,
                     list(os.path.join(root,d) for d in dirs)
                  )