Ejemplo n.º 1
0
        public void LandmarkTest()
        {
            using (var faceDetector = FrontalFaceDetector.GetFrontalFaceDetector())
                using (var shapePredictor = new ShapePredictor(Configuration.SHAP_PREDICTOR_CONFIG))
                {
                    // convert image to dlib format
                    var img = Utils.LoadImageAsBitmap("TestImage/pic01.jpg").ToArray2D <RgbPixel>();

                    // detect faces
                    var faces = faceDetector.Detect(img);

                    // detect facial landmarks
                    foreach (var rect in faces)
                    {
                        // detect facial landmarks
                        var shape = shapePredictor.Detect(img, rect);

                        //The left eye using landmark index[42, 47].
                        Landmarks landmarkLeftEye = new Landmarks(42, 47, shape);
                        Assert.AreEqual(landmarkLeftEye.LandMarkPointList.Count, 6);
                        //index range should be 0-67
                        Landmarks landmark2 = new Landmarks(42, 68, shape);
                    }
                }
        }
Ejemplo n.º 2
0
        private async void Analize()
        {
            try
            {
                if (streamCopy != null)
                {
                    try
                    {
                        streamCopy.Seek(0, SeekOrigin.Begin);
                        var serviceCV = new ServiceComputerVision();
                        var models    = await serviceCV.GetAvailableDomainModels();

                        var selectedModel = models.Models[1];
                        var result        = await serviceCV.MakeAnalysisRequest(streamCopy, selectedModel);

                        if (result == null)
                        {
                            Log.Info("MakeAnalysisRequestResult", "null");
                            return;
                        }

                        if (result.Metadata != null)
                        {
                            Log.Info("MakeAnalysisRequestResult", "Image Format : " + result.Metadata.Format);
                            Log.Info("MakeAnalysisRequestResult", "Image Dimensions : " + result.Metadata.Width + " x " + result.Metadata.Height);
                        }

                        if (result.Result != null)
                        {
                            Log.Info("MakeAnalysisRequestResult", "Result : " + result.Result.ToString());
                        }
                        Landmarks landmarks = JsonConvert.DeserializeObject <Landmarks>(result.Result.ToString());
                        Landmark  landmark  = landmarks.Items.FirstOrDefault();
                        var       item      = new Search()
                        {
                            Email = "*****@*****.**", Text = landmark.Name
                        };
                        adapter.Add(item);
                        cajaBusqueda.Text = landmark.Name;
                        FindViewById <ImageView>(Resource.Id.ImageCam).Visibility = ViewStates.Visible;
                    }
                    catch (Exception ex)
                    {
                        // Toast.MakeText(this, "Se ha presentado un error al conectar con los servicios", ToastLength.Short).Show();
                        Snackbar
                        .Make(fab, ex.Message, Snackbar.LengthShort)
                        .Show();
                        return;
                    }
                }
            }
            catch (Exception e)
            {
                Snackbar
                .Make(fab, e.Message, Snackbar.LengthShort)
                .Show();
                return;
            }
        }
Ejemplo n.º 3
0
        public ActionResult DeleteConfirmed(int id)
        {
            Landmarks landmarks = db.Landmarks.Find(id);

            db.Landmarks.Remove(landmarks);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 4
0
    public static void saveAllLandmarks()
    {
        Landmarks[] all_landmarks;

        Landmarks abandonedHouse = new Landmarks();

        abandonedHouse.in_position  = 95;
        abandonedHouse.out_position = 185;
        abandonedHouse.build_number = 11;
        abandonedHouse.message      = "You've come to an abandoned house.";

        Landmarks dustyTown = new Landmarks();

        dustyTown.in_position  = 310;
        dustyTown.out_position = 450; //just a guess
        dustyTown.build_number = 13;
        dustyTown.message      = "You approach a dusty town.";

        Landmarks campfire = new Landmarks();

        campfire.in_position  = 600;
        campfire.out_position = 670; //guess
        campfire.build_number = 14;
        campfire.message      = "You see smoke in the distance.";

        Landmarks cabin = new Landmarks();

        cabin.in_position  = 800;
        cabin.out_position = 870;
        cabin.build_number = 15;
        cabin.message      = "You see a cabin in the distance.";

        Landmarks arena = new Landmarks();

        arena.in_position  = 970;
        arena.out_position = 1050;
        arena.build_number = 16;
        arena.message      = "A dark figure grabs you!";

        Landmarks safehouse = new Landmarks();

        safehouse.in_position  = 1100;
        safehouse.out_position = 1170;
        safehouse.build_number = 17;
        safehouse.message      = "You see a gleaming light ahead";

        all_landmarks = new Landmarks[6];

        all_landmarks[0] = abandonedHouse;
        all_landmarks[1] = dustyTown;
        all_landmarks[2] = campfire;
        all_landmarks[3] = cabin;
        all_landmarks[4] = arena;
        all_landmarks[5] = safehouse;


        SaveSystem.SaveLandmarks(all_landmarks);
    }
Ejemplo n.º 5
0
        public void LoadXmlToDb_Landmark(string FileName, string SchemeName)
        {
            FileStream ws;

            ws = File.OpenRead(FileName);
            Landmarks cs = new Landmarks();

            loadXmlToDb(FileName, SchemeName, cs.Landmark, "dbo.Landmark");
        }
Ejemplo n.º 6
0
        public void AddLandmark(string description, double latitude, double longitude)
        {
            // consider only allowing unique adds. For now, whatever.
            Android.Locations.Location landmark = new Android.Locations.Location(description)
            {
                Latitude = latitude, Longitude = longitude
            };

            Landmarks.Add(landmark);
        }
Ejemplo n.º 7
0
 public ActionResult Edit([Bind(Include = "Id,Description,Lat,Long")] Landmarks landmarks)
 {
     if (ModelState.IsValid)
     {
         db.Entry(landmarks).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(landmarks));
 }
Ejemplo n.º 8
0
        public ActionResult Create([Bind(Include = "Id,Description,Lat,Long")] Landmarks landmarks)
        {
            if (ModelState.IsValid)
            {
                db.Landmarks.Add(landmarks);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(landmarks));
        }
Ejemplo n.º 9
0
        /// <summary>
        /// Create a vehicle descriptor string.
        /// </summary>
        /// <param name="format">String formt for double values.</param>
        /// <returns>Simulated vehicle descriptor string.</returns>
        public string ToString(string format)
        {
            string descriptor = "";

            descriptor += "pose\n\t" + Pose.State.ToString(format) + "\n";
            descriptor += "params\n\t" + Measurer.ToString(format) + "\n";
            descriptor += "landmarks\n\t" + string.Join("\n\t",
                                                        Landmarks.ConvertAll(l => string.Join(" ",
                                                                                              l.Convert(x => x.ToString(format))))) + "\n";

            return(descriptor);
        }
Ejemplo n.º 10
0
    public void MoveLandmarks(Landmarks landmarks)
    {
        foreach (Landmark landmark in landmark_list_)
        {
            landmark.landmarks_ = landmarks;
            landmark.transform.SetParent(landmarks.transform);
            landmarks.landmark_list_.Add(landmark);
        }

        landmarks.merged_ = merged_;
        merged_           = false;

        landmark_list_.Clear();
    }
Ejemplo n.º 11
0
        // GET: Landmarks/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Landmarks landmarks = db.Landmarks.Find(id);

            if (landmarks == null)
            {
                return(HttpNotFound());
            }
            return(View(landmarks));
        }
Ejemplo n.º 12
0
        /// <summary>Clean up any resources being used.</summary>
        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        protected virtual void Dispose(bool disposing)
        {
            if (!_isDisposed)
            {
                if (disposing)   // Free any managed objects here
                {
                    Landmarks?.Dispose(); Landmarks = null;
                    BoardHexes.Dispose();
                }

                // Free any unmanaged objects here

                _isDisposed = true;
            }
        }
Ejemplo n.º 13
0
    private void Start()
    {
        Weapons.saveAllWeapons();
        Items.saveAllItems();
        Landmarks.saveAllLandmarks();
        Foods.saveAllFoods();
        Scene currScene = SceneManager.GetActiveScene();

        if (currScene.buildIndex == 10 || currScene.buildIndex == 17)
        {
            PlayerData player = SaveSystem.LoadDefault();
            setDefaultInventory(player.inventory);
            SaveSystem.SavePlayerData(player);
            SaveSystem.SaveLandmark("0");
        }
    }
Ejemplo n.º 14
0
    void Start()
    {
        for (int i = 0; i < 4; i++)
        {
            for (int j = 0; j < 4; j++)
            {
                Landmarks landmarks = landmarks_map_[i, j] = Instantiate(landmarks_prefab_).GetComponent <Landmarks>();
                landmarks.transform.SetParent(transform);
                landmarks.tile_pos_ = new Vector2Int(i, j);

                Vector3 local_position = PosToWorld(landmarks.tile_pos_);
                landmarks.transform.localPosition = local_position;
            }
        }

        MenuStart();
    }
Ejemplo n.º 15
0
        public RectangleF GetRegionBounds(FaceRegion region)
        {
            var points  = Landmarks.Where(m => m.Region == region);
            var xValues = points.Select(p => p.Coordinates.X);
            var yValues = points.Select(p => p.Coordinates.Y);

            if (!xValues.Any() || !yValues.Any())
            {
                return(RectangleF.Empty);
            }

            float xMin = xValues.Min();
            float xMax = xValues.Max();
            float yMin = yValues.Min();
            float yMax = yValues.Max();

            return(new RectangleF(xMin, yMin, xMax - xMin, yMax - yMin));
        }
Ejemplo n.º 16
0
    public void returnToRoad()
    {
        //Save All Changes Here
        //Also need to figure out how to change location of kid so he cant visit house again
        Landmarks  curr_landmark = SaveSystem.LoadLandmarks(SaveSystem.LoadLandmark());
        PlayerData savedPlayer   = SaveSystem.LoadPlayerData();

        savedPlayer.curr_weight = calcCurrWeight();
        savedPlayer.health      = Health;
        savedPlayer.food        = Food;
        addSeenItems();
        savedPlayer.inventory = inventory;

        SaveSystem.SaveLandmark("4");
        savedPlayer.x = curr_landmark.out_position;
        SaveSystem.SavePlayerData(savedPlayer);


        SceneManager.LoadScene("Kirnys");
    }
Ejemplo n.º 17
0
 /// <inheritdoc/>
 protected virtual void Dispose(bool disposing)
 {
     if (!_isDisposed)
     {
         if (disposing)
         {
             var path = HexgridPath as IDisposable;
             if (path != null)
             {
                 path.Dispose(); path = null;
             }
             if (Landmarks != null)
             {
                 Landmarks.Dispose();   Landmarks = null;
             }
             if (_boardHexes != null)
             {
                 _boardHexes.Dispose(); _boardHexes = null;
             }
         }
         _isDisposed = true;
     }
 }
Ejemplo n.º 18
0
    // Start is called before the first frame update
    void Start()
    {
        makeInventory();
        mytransform  = GetComponent <Transform>();
        BaseStrength = 5;
        BaseSight    = 5;
        BaseSpeed    = 5;
        BaseStealth  = 5;
        setBuffs();
        Strength             = BaseStrength + strengthBuff;
        Sight                = BaseSight + sightBuff;
        Speed                = BaseSpeed + speedBuff;
        Stealth              = BaseStealth + stealthBuff;
        max_weight           = BaseMax_Weight + maxWeightBuff;
        Health               = 50;
        Distance             = 95;
        Food                 = 20f;
        curr_weight          = calcCurrWeight();
        mytransform.position = new Vector3(0f, mytransform.position.y, mytransform.position.z);
        SaveDefault();
        LoadPlayer();
        SavePlayer();
        setBuffs();
        Strength                = BaseStrength + strengthBuff;
        Sight                   = BaseSight + sightBuff;
        Speed                   = BaseSpeed + speedBuff;
        Stealth                 = BaseStealth + stealthBuff;
        melee_dmg               = weapon.power + Strength;
        max_weight              = 50f + (50f * (Strength / 10f));
        moderate_diet_per_mile  = (.25f + (.04f * Strength) - (.1f * Speed / 10)) / 2f;
        plentiful_diet_per_mile = moderate_diet_per_mile * 2;
        meager_diet_per_mile    = moderate_diet_per_mile * .5f;
        curr_diet               = moderate_diet_per_mile;
        find_chance_per_mile    = (.01f + (Sight / 220f)) / 2;
        danger_sense            = .2f + (Sight / 10);
        trail_speed_per_frame   = (.1f * (Speed + 1)) / 4;
        max_weight              = BaseMax_Weight + maxWeightBuff;
        strengthShow.text       = "Strength: " + Strength.ToString();
        sightShow.text          = "Sight: " + Sight.ToString();
        speedShow.text          = "Speed: " + Speed.ToString();
        stealthShow.text        = "Stealth: " + Stealth.ToString();
        meleeShow.text          = "Melee Damage: " + melee_dmg.ToString();
        curr_found_item.name    = "nothing";
        curr_landmark           = SaveSystem.LoadLandmarks(SaveSystem.LoadLandmark());
        SaveSystem.SaveFoundItem(curr_found_item.name);

        if (SaveSystem.LoadFood() == "meager")
        {
            curr_diet      = meager_diet_per_mile;
            foodText.color = Color.white;
        }
        else if (SaveSystem.LoadFood() == "moderate")
        {
            curr_diet      = moderate_diet_per_mile;
            foodText.color = Color.yellow;
        }
        else
        {
            curr_diet      = plentiful_diet_per_mile;
            foodText.color = Color.white;
        }
        modal.gameObject.SetActive(false);
        message.text = "";
    }
Ejemplo n.º 19
0
 private int           Heuristic(HexCoords coords)
 {
     return(Landmarks.Max(landmark => LandmarkHeuristic(landmark, coords)));
 }
Ejemplo n.º 20
0
    void GameUpdate()
    {
        if (is_paused_)
        {
            return;
        }

        if (Input.GetKeyDown(KeyCode.Escape) && !is_game_over_)
        {
            Pause();
        }

        Vector3 euler_angle = camera_pan_.transform.localEulerAngles;

        if (euler_angle.y < view_y_)
        {
            euler_angle.y += 100 * Time.deltaTime;
            if (euler_angle.y > view_y_)
            {
                euler_angle.y = view_y_;
            }

            camera_pan_.transform.localEulerAngles = euler_angle;
        }
        if (euler_angle.y > view_y_)
        {
            euler_angle.y -= 100 * Time.deltaTime;
            if (euler_angle.y < view_y_)
            {
                euler_angle.y = view_y_;
            }

            camera_pan_.transform.localEulerAngles = euler_angle;
        }

        bool busy  = false;
        int  score = 0;

        if (Input.GetKey(KeyCode.UpArrow) || Input.GetKey(KeyCode.DownArrow) || Input.GetKey(KeyCode.LeftArrow) || Input.GetKey(KeyCode.RightArrow))
        {
            if (mul < 3f)
            {
                mul += 0.02f;
            }
        }
        else
        {
            if (mul > 1f)
            {
                mul -= 0.1f;
            }
        }


        for (int i = 0; i < 4; i++)
        {
            for (int j = 0; j < 4; j++)
            {
                Landmarks landmarks = landmarks_map_[i, j];

                landmarks.merged_ = false;

                if (alpha_timer_ > 1.5)
                {
                    landmarks.SetAlpha(0f);
                }
                else
                {
                    landmarks.SetAlpha(1f);
                }

                foreach (Landmark landmark in landmarks.landmark_list_)
                {
                    landmark.Move(mul);
                }

                if (!landmarks.Busy() && landmarks.landmark_list_.Count > 1)
                {
                    int level = (int)Mathf.Log(landmarks.Level(), 2);
                    landmarks.UpgradeLandmark(CreateLandmark(level));
                }

                score += landmarks.Level() * 5;

                busy = busy || landmarks.Busy();
            }
        }

        if (score > score_)
        {
            score_       = score;
            Score.score_ = score_;
        }

        if (busy)
        {
            return;
        }

        alpha_timer_ += Time.deltaTime;

        if (is_game_over_)
        {
            if (!ui_game_over_.activeInHierarchy)
            {
                UIOffAll();
                ui_game_over_.SetActive(true);
                return;
            }

            if (Input.anyKeyDown)
            {
                SceneManager.LoadScene(0);
            }
            return;
        }

        if (new_turn_)
        {
            new_turn_ = false;

            List <Landmarks> empty_landmarks = new List <Landmarks>();
            for (int i = 0; i < 4; i++)
            {
                for (int j = 0; j < 4; j++)
                {
                    Landmarks landmarks = landmarks_map_[i, j];

                    if (landmarks.Empty())
                    {
                        empty_landmarks.Add(landmarks);
                    }
                }
            }

            float max_step = 0;
            for (int i = 0; i < highest_level_; i++)
            {
                max_step += i * i * i;
            }

            float value = Random.value;
            float step  = 0;
            int   level = 1;
            for (int i = 0; i < highest_level_; i++)
            {
                step += i * i * i;
                if (value <= step / max_step)
                {
                    level = highest_level_ - i;
                    break;
                }
            }

            empty_landmarks[Random.Range(0, empty_landmarks.Count)].AddLandmark(CreateLandmark(level));

            if (empty_landmarks.Count <= 1)
            {
                for (int i = 0; i < 4; i++)
                {
                    for (int j = 0; j < 3; j++)
                    {
                        Landmarks landmark = landmarks_map_[i, j];
                        Landmarks next     = landmarks_map_[i, j + 1];
                        if (landmark.Level() == next.Level())
                        {
                            return;
                        }
                    }

                    for (int j = 3; j > 0; j--)
                    {
                        Landmarks landmark = landmarks_map_[i, j];
                        Landmarks next     = landmarks_map_[i, j - 1];
                        if (landmark.Level() == next.Level())
                        {
                            return;
                        }
                    }
                }

                for (int j = 0; j < 4; j++)
                {
                    for (int i = 0; i < 3; i++)
                    {
                        Landmarks landmark = landmarks_map_[i, j];
                        Landmarks next     = landmarks_map_[i + 1, j];
                        if (landmark.Level() == next.Level())
                        {
                            return;
                        }
                    }

                    for (int i = 3; i > 0; i--)
                    {
                        Landmarks landmark = landmarks_map_[i, j];
                        Landmarks next     = landmarks_map_[i - 1, j];
                        if (landmark.Level() == next.Level())
                        {
                            return;
                        }
                    }
                }

                is_game_over_ = true;
                return;
            }
            return;
        }

        int dir = -1;

        if (Input.GetKeyDown(KeyCode.UpArrow))
        {
            dir = 0;
        }
        else if (Input.GetKeyDown(KeyCode.DownArrow))
        {
            dir = 1;
        }
        else if (Input.GetKeyDown(KeyCode.LeftArrow))
        {
            dir = 2;
        }
        else if (Input.GetKeyDown(KeyCode.RightArrow))
        {
            dir = 3;
        }


        if (dir == 0)
        {
            for (int i = 0; i < 4; i++)
            {
                for (int j = 2; j >= 0; j--)
                {
                    Landmarks landmarks = landmarks_map_[i, j];
                    if (landmarks.Empty())
                    {
                        continue;
                    }

                    Landmarks next = landmarks_map_[i, j + 1];
                    if (next.Empty() || next.Level() == landmarks.Level())
                    {
                        if (next.Level() == landmarks.Level())
                        {
                            if (landmarks.merged_ || next.merged_)
                            {
                                continue;
                            }
                            else
                            {
                                landmarks.merged_ = true;
                            }
                        }

                        landmarks.MoveLandmarks(next);
                        new_turn_    = true;
                        alpha_timer_ = 0;
                        j            = 3;
                    }
                }
            }
        }
        else if (dir == 1)
        {
            for (int i = 0; i < 4; i++)
            {
                for (int j = 1; j < 4; j++)
                {
                    Landmarks landmarks = landmarks_map_[i, j];
                    if (landmarks.Empty())
                    {
                        continue;
                    }

                    Landmarks next = landmarks_map_[i, j - 1];
                    if (next.Empty() || next.Level() == landmarks.Level())
                    {
                        if (next.Level() == landmarks.Level())
                        {
                            if (landmarks.merged_ || next.merged_)
                            {
                                continue;
                            }
                            else
                            {
                                landmarks.merged_ = true;
                            }
                        }

                        landmarks.MoveLandmarks(next);
                        new_turn_    = true;
                        alpha_timer_ = 0;
                        j            = 0;
                    }
                }
            }
        }
        else if (dir == 2)
        {
            for (int j = 0; j < 4; j++)
            {
                for (int i = 1; i < 4; i++)
                {
                    Landmarks landmarks = landmarks_map_[i, j];
                    if (landmarks.Empty())
                    {
                        continue;
                    }

                    Landmarks next = landmarks_map_[i - 1, j];
                    if (next.Empty() || next.Level() == landmarks.Level())
                    {
                        if (next.Level() == landmarks.Level())
                        {
                            if (landmarks.merged_ || next.merged_)
                            {
                                continue;
                            }
                            else
                            {
                                landmarks.merged_ = true;
                            }
                        }

                        landmarks.MoveLandmarks(next);
                        new_turn_    = true;
                        alpha_timer_ = 0;
                        i            = 0;
                    }
                }
            }
        }
        else if (dir == 3)
        {
            for (int j = 0; j < 4; j++)
            {
                for (int i = 2; i >= 0; i--)
                {
                    Landmarks landmarks = landmarks_map_[i, j];
                    if (landmarks.Empty())
                    {
                        continue;
                    }

                    Landmarks next = landmarks_map_[i + 1, j];
                    if (next.Empty() || next.Level() == landmarks.Level())
                    {
                        if (next.Level() == landmarks.Level())
                        {
                            if (landmarks.merged_ || next.merged_)
                            {
                                continue;
                            }
                            else
                            {
                                landmarks.merged_ = true;
                            }
                        }

                        landmarks.MoveLandmarks(next);
                        new_turn_    = true;
                        alpha_timer_ = 0;
                        i            = 3;
                    }
                }
            }
        }
    }