position2coordinates = load_position2coordinates(chip_fname)
	min_x, max_x, min_y, max_y = get_borders_position2coordinates(position2coordinates)
	print "min_x:", min_x
	print "max_x:", max_x
	print "min_y:", min_y
	print "max_y:", max_y
	coordinates2position = load_coordinates2position(chip_fname)
	
	#matrix for visualization
	range_y = max_y-min_y+1
	print "range_y:", range_y
	range_x = max_x-min_x+1
	print "range_x:", range_x
	mtx = [[0 for _ in xrange(range_y)] for _ in xrange(range_x)]
	
	fout.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n")
	fout.write("<environment type=\"CIELab\">\n")
	
	for ind, munsell_coordinates in enumerate(for_each_chip(open(munsell_fname, 'r'))):
		print_munsell_chip(munsell_coordinates, fout)
		x, y = position2coordinates[ind+1]
		if is_to_be_multiplied(x, y):
			for _ in xrange(freq-1):
				print_munsell_chip(munsell_coordinates, fout)
			mtx[x][y] = freq
		
	fout.write("</environment>\n")
	
	fout.close()
	plt.imshow(matrix(mtx))#, cmap=plt.cm.gray) #Needs to be in row,col order
	plt.savefig(out_picname, bbox_inches='tight')
Пример #2
0
	coordinate = int(sys.argv[1])
	if len(sys.argv) < 3:
		print "2. parameter: which half is going to be multiplied: less or larger."
		sys.exit(1)
	side = sys.argv[2]
	if len(sys.argv) < 4:
		print "3. parameter: how many time one half is going to be multiplied."
		sys.exit(1)
	freq = int(sys.argv[3])
	if len(sys.argv) < 5:
		print "4. parameter: path to xml file with Munsell chips."
		sys.exit(1)
	fname = sys.argv[4]
	if len(sys.argv) < 6:
		print "5. parameter: path to a c-lab file."
		sys.exit(1)
	clab = sys.argv[5]

	mid_pnt = get_median_in_clab( traverse_clab_file(open(clab, 'r')), coordinate)

	print "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
	print "<environment type=\"CIELab\">"
	
	for x, y, z in for_each_chip(open(fname, 'r')):
		print_munsell_chip((x, y, z))
		if is_to_be_multiplied((x, y, z), coordinate, side, mid_pnt):
			for _ in xrange(freq-1):
				print_munsell_chip((x, y, z))
	
	print "</environment>"