void Start() { detectedObjects = new List <Detection>(); cam = GetComponent <Camera>(); sessionTrackables = new List <Trackable>(); //Subsrcibe to the RGB Image provider. RGB_Image_Provider imageSource = GetComponent <RGB_Image_Provider>(); imageSource.OnImageAvailableCallback += new RGB_Image_Provider.OnImageAvailableCallbackFunc(onImageAvailable); // Read object detector labels. Currently I use Open Images Dataset with 600 images. label_list = labels.text.Split(new char[] { '\n' }, StringSplitOptions.RemoveEmptyEntries); // Create GRPC client to connect to TF Serving. channel = new Channel(server, ChannelCredentials.Insecure, new List <Grpc.Core.ChannelOption> { new ChannelOption(ChannelOptions.MaxReceiveMessageLength, int.MaxValue), new ChannelOption(ChannelOptions.MaxSendMessageLength, int.MaxValue) }); client = new PredictionService.PredictionServiceClient(channel); //Read Model Meta Data. var response = client.GetModelMetadata(new GetModelMetadataRequest() { ModelSpec = new ModelSpec() { Name = "default" }, MetadataField = { "signature_def" } }); Debug.Log("Connected to Tensorflow Serving Model:"); Debug.Log(response.ModelSpec.Name + " " + response.ModelSpec.Version); }
// Start is called before the first frame update void Start() { //Subsrcibe to the RGB Image provider. RGB_Image_Provider imageSource = GetComponent <RGB_Image_Provider>(); imageSource.OnImageAvailableCallback += new RGB_Image_Provider.OnImageAvailableCallbackFunc(onImageAvailable); DetectObjects objectDetector = GetComponent <DetectObjects>(); objectDetector.onDetectionAvailableCallback += new DetectObjects.OnDetectionAvailableCallbackFunc(onDetectionAvailable); pointIds = new List <int>(); pointList = new List <Point>(); pointCache = new Dictionary <int, Point>(); detectionCache = new Dictionary <int, DetectionPoint>(); channel = new Channel(host + ":" + port, ChannelCredentials.Insecure); client = new GenesisSimulator.GenesisSimulatorClient(channel); cam = GetComponent <Camera>(); Screen.sleepTimeout = SleepTimeout.NeverSleep; }