Esempio n. 1
0
        // 定期的に画像をクロール&学習
        public ActionResult Crawl()
        {
            string dirRaw = HttpContext.Server.MapPath("~/App_Data/raw/");
            DownloadClient client = new DownloadClient(dirRaw);
            DateTime now = GetCurrentTimeAtJapan();
            var list = client.Start(now - new TimeSpan(1, 15, 0), now);

            LearningManager m = GetLearningManager();
            string pathNeuro = GetNeuroPath(m.Filename);
            if (!System.IO.File.Exists(pathNeuro)) m.Initialize();	// ファイルが無い時
            List<LearningImage> images = new List<LearningImage>();
            foreach (var item in list) images.Add(RainImage.LoadGif(item.Path).Shrink(SCALE));
            m.Learn(images);
            m.Save(pathNeuro);

            string[] files = Directory.GetFiles(dirRaw, "*.gif", SearchOption.AllDirectories);
            ViewBag.Message = "Files=" + files.Length + Environment.NewLine;

            client.StartAsync(now - new TimeSpan(3, 0, 0), now - new TimeSpan(1, 0, 0));	// 念のため
            return View();
        }