function unlockSampleToCrop() { if (isset($_POST["sample"]) && is_numeric($_POST["sample"]) && $_POST["sample"] > 0) { $sample = AnnotationSample::find($_POST["sample"]); if ($sample->lock == 1) { $sample->lock = 0; $sample->save(); } } }
function recommendSampleClass() { $response = ["success" => 0, "id" => 0, "msg" => "Unknown class", "image" => ""]; if (isset($_POST["sample"]) && is_numeric($_POST["sample"]) && $_POST["sample"] > 0) { $sample = AnnotationSample::find($_POST["sample"]); if ($sample) { $client = new Client(["base_uri" => "http://alvaroarcos.co:8080/classify-ts/"]); $svm_class_id = intval($client->get("germany/" . $sample->image)->getBody()->getContents()); if ($svm_class_id >= 0) { $class = TrafficSignClass::where('germany', $svm_class_id)->first(); if ($class) { $response = ["success" => 1, "id" => $class->id, "msg" => "Class predicted", "image" => $class->image]; } } } } return json_encode($response); }
<?php require '../../computervision/config/common_require.php'; define("SAMPLES_PER_GROUP", 20); if (isset($_POST["action"]) && $_POST["action"] == "loadClassificationResults" && isset($_POST["page"]) && is_numeric($_POST["page"])) { $samples_classification = AnnotationSample::where('class_id', '>', 0)->skip($_POST["page"] * SAMPLES_PER_GROUP)->take(SAMPLES_PER_GROUP)->with('_class')->get(); echo json_encode($samples_classification); exit; } if (isset($_POST["action"]) && $_POST["action"] == "loadCroppedResults" && isset($_POST["page"]) && is_numeric($_POST["page"])) { $samples_cropped = AnnotationSample::whereNotNull('crop_x')->skip($_POST["page"] * SAMPLES_PER_GROUP)->take(SAMPLES_PER_GROUP)->get(); echo json_encode($samples_cropped); exit; } $samples_classification = AnnotationSample::where('class_id', '>', 0)->get(); $samples_cropped = AnnotationSample::whereNotNull('crop_x')->get(); $total_groups_class = ceil($samples_classification->count() / SAMPLES_PER_GROUP); $total_groups_crop = ceil($samples_cropped->count() / SAMPLES_PER_GROUP); $title = "Annotation results"; include_once "include/header.inc.php"; ?> <div class="section"> <div class="container"> <div class="row"> <div class="col s12"> <div class="card-panel blue-grey darken-2"> <span class="white-text">Edit if there is any mistake.</span> </div> </div> <div class="col s12"> <ul class="tabs z-depth-1">
if (isset($_POST["action"])) { switch ($_POST["action"]) { case "cropSample": echo processCropSample(); break; case "loadNextSampleToCrop": echo loadNextSampleToCrop(); break; case "unlockSampleToCrop": unlockSampleToCrop(); break; } exit; } if (isset($_GET["id"]) && is_numeric($_GET["id"]) && $_GET["id"] > 0) { $sample = AnnotationSample::find($_GET["id"]); } //$samples = AnnotationSample::all(); //$samples = AnnotationSample::whereNull('crop_x')->get(); $title = "Cropper"; include_once "include/header.inc.php"; ?> <div class="section"> <div class="container"> <div class="row"> <div class="col s2"> <div class="center"> <!-- <a id="previous_crop_sample_btn" class="waves-effect waves-light btn-large orange"><i class="material-icons left">chevron_left</i></a> <a id="next_crop_sample_btn" class="waves-effect waves-light btn-large orange"><i class="material-icons right">chevron_right</i></a> <div class="clearfix" style="margin-top: 20px;"></div>--> <a id="crop_sample_btn" data-sample="<?php