def generateICAVoxelModel(model, data, size, efOrder):
    random.seed(0)
    nShow = 45
    for ii in range(nShow):
        blob = model.generate(numDims = None)
        # rotate axes to x,y,z order
        #blob = flat2XYZ(blob, size = (2,10,20))
        #blob = flat2XYZ(blob, size = (10,10,20))
        if efOrder:
            blob = flat2XYZ(blob, size = size)
        else:
            blob = reshape(blob, size)

        #print 'blob from', blob.min(), 'to', blob.max()

        #continue
        #pdb.set_trace()

        for rr in range(24,25):
            rot = rr * 1
            plot3DShape(blob, smoothed = False, plotEdges = True, figSize = (800,800),
                        rotAngle = rot,
                        saveFilename = os.path.join(resman.rundir, 'PVMgen_%03d_rot%03d_blocky.png' % (ii, rot)))
            plot3DShape(blob, smoothed = True, plotEdges = True, figSize = (800,800),
                        rotAngle = rot,
                        saveFilename = os.path.join(resman.rundir, 'PVMgen_%03d_rot%03d_smooth.png' % (ii, rot)))
Пример #2
0
def visInput(data, labels=None, efOrder=True):
    #shape = random.normal(0,1,3*3*3)
    #idx = 9         # 9 is good to check chirality... but numbers not matching up.
    #blob = reshape(data[idx,:], (20,10,10))

    nShow = min(data.shape[0], 50)
    for ii in range(nShow):
        blob = data[ii, :]
        # rotate axes to x,y,z order
        if efOrder:
            blob = flat2XYZ(blob)
        else:
            blob = reshape(blob, (10, 10, -1))

        if labels:
            print ii, getEFFindUrl('http://devj.cornell.endlessforms.com',
                                   labels[ii]), '\t', sum(blob > .1)
            #print ii, '\t', sum(blob > .1)

        for rr in range(1, 2):
            rot = rr * 24
            plot3DShape(blob,
                        smoothed=False,
                        plotEdges=True,
                        figSize=(800, 800),
                        rotAngle=rot,
                        saveFilename=os.path.join(
                            resman.rundir,
                            'shape_%03d_rot%03d.png' % (ii, rot)))
Пример #3
0
def mutateIndepVoxelModel(model, data, size, efOrder):
    for seed in range(1):
        random.seed(seed)
        blob = model.generate()

        degreesPerFrame = 1
        framesPerMutation = 8
        for frame in range(450):
            rot = frame * degreesPerFrame

            if efOrder:
                blobPlot = flat2XYZ(blob)
            else:
                blobPlot = reshape(blob, size)

            plot3DShape(blobPlot,
                        smoothed=False,
                        plotEdges=True,
                        figSize=(800, 800),
                        rotAngle=rot,
                        saveFilename=os.path.join(
                            resman.rundir,
                            'IVMmut_s%03d_f%03d.png' % (seed, frame)))

            if frame % framesPerMutation == 0:
                blob = model.nearby(blob)
def demo():
    random.seed(0)
    size = (10, 10, 20)

    xx = randomCubeSphere(size, Nsamples=50)

    for ii in range(10):
        plot3DShape(reshape(xx[ii, :], size), figSize=(800, 800))
        raw_input('push enter for next')
def demo():
    random.seed(0)
    size = (10,10,20)

    xx = randomCubeSphere(size, Nsamples = 50)

    for ii in range(10):
        plot3DShape(reshape(xx[ii,:], size), figSize = (800,800))
        raw_input('push enter for next')
Пример #6
0
def mutateICAVoxelModel(model, data, size, mutateFn, efOrder):
    if mutateFn == 'mutateFewDimensions':
        tag = 'Few'
    elif mutateFn == 'mutateMetHast':
        tag = 'MH'
    else:
        raise Exception('unknown mutateFn: %s' % repr(mutateFn))

    for seed in range(5):
        random.seed(seed)
        blob = 0
        tries = 100
        while sum(blob > .1) == 0 and tries > 0:
            pc, blob = model.generate(fullReturn=True)
            tries -= 1

        #if mutateFn == 'mutateMetHast':
        #    delta = None  # no delta yet

        #pdb.set_trace()

        degreesPerFrame = 1
        framesPerMutation = 1
        for frame in range(720):
            rot = frame * degreesPerFrame

            if efOrder:
                blob = flat2XYZ(blob, size)
            else:
                blob = reshape(blob, size)

            plot3DShape(blob,
                        smoothed=False,
                        plotEdges=True,
                        figSize=(800, 800),
                        rotAngle=rot,
                        saveFilename=os.path.join(
                            resman.rundir, 'PVMmut%s_s%03d_f%05d_blocky.png' %
                            (tag, seed, frame)))
            plot3DShape(blob,
                        smoothed=True,
                        plotEdges=True,
                        figSize=(800, 800),
                        rotAngle=rot,
                        saveFilename=os.path.join(
                            resman.rundir, 'PVMmut%s_s%03d_f%05d_smooth.png' %
                            (tag, seed, frame)))

            if mutateFn == 'mutateFewDimensions':
                if frame % framesPerMutation == 0:
                    pc, blob = model.mutateFewDimensions(pc, howmany=1)
            else:
                pc, blob = model.mutateMetHast(pc, proposalNoise=.025)
def generateIndepVoxelModel(model, data, size, efOrder):
    random.seed(0)
    nShow = 50
    for ii in range(nShow):
        blob = model.generate()
        # rotate axes to x,y,z order
        if efOrder:
            blob = flat2XYZ(blob)
        else:
            blob = reshape(blob, size)

        for rr in range(1,2):
            rot = rr * 24
            plot3DShape(blob, smoothed = False, plotEdges = True, figSize = (800,800),
                        rotAngle = rot,
                        saveFilename = os.path.join(resman.rundir, 'IVMgen_%03d_rot%03d.png' % (ii, rot)))
def mutateICAVoxelModel(model, data, size, mutateFn, efOrder):
    if mutateFn == 'mutateFewDimensions':
        tag = 'Few'
    elif mutateFn == 'mutateMetHast':
        tag = 'MH'
    else:
        raise Exception('unknown mutateFn: %s' % repr(mutateFn))
    
    for seed in range(5):
        random.seed(seed)
        blob = 0
        tries = 100
        while sum(blob > .1) == 0 and tries > 0:
            pc, blob = model.generate(fullReturn = True)
            tries -= 1

        #if mutateFn == 'mutateMetHast':
        #    delta = None  # no delta yet

        #pdb.set_trace()

        degreesPerFrame = 1
        framesPerMutation = 1
        for frame in range(720):
            rot = frame * degreesPerFrame

            if efOrder:
                blob = flat2XYZ(blob, size)
            else:
                blob = reshape(blob, size)

            plot3DShape(blob, smoothed = False, plotEdges = True, figSize = (800,800),
                        rotAngle = rot,
                        saveFilename = os.path.join(resman.rundir, 'PVMmut%s_s%03d_f%05d_blocky.png' % (tag, seed, frame)))
            plot3DShape(blob, smoothed = True, plotEdges = True, figSize = (800,800),
                        rotAngle = rot,
                        saveFilename = os.path.join(resman.rundir, 'PVMmut%s_s%03d_f%05d_smooth.png' % (tag, seed, frame)))

            if mutateFn == 'mutateFewDimensions':
                if frame % framesPerMutation == 0:
                    pc, blob = model.mutateFewDimensions(pc, howmany = 1)
            else:
                pc, blob = model.mutateMetHast(pc, proposalNoise = .025)
def mutateIndepVoxelModel(model, data, size, efOrder):
    for seed in range(1):
        random.seed(seed)
        blob = model.generate()

        degreesPerFrame = 1
        framesPerMutation = 8
        for frame in range(450):
            rot = frame * degreesPerFrame

            if efOrder:
                blobPlot = flat2XYZ(blob)
            else:
                blobPlot = reshape(blob, size)
            
            plot3DShape(blobPlot, smoothed = False, plotEdges = True, figSize = (800,800),
                        rotAngle = rot,
                        saveFilename = os.path.join(resman.rundir, 'IVMmut_s%03d_f%03d.png' % (seed, frame)))

            if frame % framesPerMutation == 0:
                blob = model.nearby(blob)
Пример #10
0
def generateIndepVoxelModel(model, data, size, efOrder):
    random.seed(0)
    nShow = 50
    for ii in range(nShow):
        blob = model.generate()
        # rotate axes to x,y,z order
        if efOrder:
            blob = flat2XYZ(blob)
        else:
            blob = reshape(blob, size)

        for rr in range(1, 2):
            rot = rr * 24
            plot3DShape(blob,
                        smoothed=False,
                        plotEdges=True,
                        figSize=(800, 800),
                        rotAngle=rot,
                        saveFilename=os.path.join(
                            resman.rundir,
                            'IVMgen_%03d_rot%03d.png' % (ii, rot)))
Пример #11
0
def visInput(data, labels = None, efOrder = True):
    #shape = random.normal(0,1,3*3*3)
    #idx = 9         # 9 is good to check chirality... but numbers not matching up.
    #blob = reshape(data[idx,:], (20,10,10))

    nShow = min(data.shape[0], 50)
    for ii in range(nShow):
        blob = data[ii,:]
        # rotate axes to x,y,z order
        if efOrder:
            blob = flat2XYZ(blob)
        else:
            blob = reshape(blob, (10,10,-1))

        if labels:
            print ii, getEFFindUrl('http://devj.cornell.endlessforms.com', labels[ii]), '\t', sum(blob > .1)
            #print ii, '\t', sum(blob > .1)

        for rr in range(1,2):
            rot = rr * 24
            plot3DShape(blob, smoothed = False, plotEdges = True, figSize = (800,800),
                        rotAngle = rot,
                        saveFilename = os.path.join(resman.rundir, 'shape_%03d_rot%03d.png' % (ii, rot)))
Пример #12
0
def generateICAVoxelModel(model, data, size, efOrder):
    random.seed(0)
    nShow = 45
    for ii in range(nShow):
        blob = model.generate(numDims=None)
        # rotate axes to x,y,z order
        #blob = flat2XYZ(blob, size = (2,10,20))
        #blob = flat2XYZ(blob, size = (10,10,20))
        if efOrder:
            blob = flat2XYZ(blob, size=size)
        else:
            blob = reshape(blob, size)

        #print 'blob from', blob.min(), 'to', blob.max()

        #continue
        #pdb.set_trace()

        for rr in range(24, 25):
            rot = rr * 1
            plot3DShape(blob,
                        smoothed=False,
                        plotEdges=True,
                        figSize=(800, 800),
                        rotAngle=rot,
                        saveFilename=os.path.join(
                            resman.rundir,
                            'PVMgen_%03d_rot%03d_blocky.png' % (ii, rot)))
            plot3DShape(blob,
                        smoothed=True,
                        plotEdges=True,
                        figSize=(800, 800),
                        rotAngle=rot,
                        saveFilename=os.path.join(
                            resman.rundir,
                            'PVMgen_%03d_rot%03d_smooth.png' % (ii, rot)))