var img=new Image(); var ip = getIp(); var token = getCookie("_csrf"); canvas = document.getElementById("myCanvas"); context = canvas.getContext("2d"); // canvas.width = document.getElementById("myCanvas").offsetWidth; // canvas.height = document.getElementById("myCanvas").offsetWidth/1280*720; canvas.width = document.getElementById("win_canvas").offsetWidth; canvas.height = document.getElementById("win_canvas").offsetHeight; var color_dict = {"car":"#0099CC", "person":"#FF99CC","point":"#00cc00","pointselected":"red"}; var color_person = {"0":"#13c90c","1":"#fc0707","2":"#FF99CC","3":"#fceb07"}; var rects=[]; var masks=[]; var pointShapes =[]; var fileindex =0; var lastindex=false; var labeltastresult; var pageSize = 12; var tableData; var tablePageData; var dataset_id = $('#hide_uuidid').val(); var dbdatasetid = dataset_id; var textContent; var labelInfo; page(0,pageSize); function getCookie(name) { var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)"); if(arr=document.cookie.match(reg)) return unescape(arr[2]); else return null; } function list(current,pageSize){ $.ajax({ type:"GET", url:ip + "/gitea-dateset-item-page", headers: { authorization:token, }, dataType:"json", data:{ 'datasetId':dbdatasetid, 'startPage':current, 'pageSize':pageSize}, async:false, success:function(json){ tablePageData = json; tableData = json.data; labeltastresult = tableData; fileindex=0; if(lastindex){ fileindex = pageSize - 1; } }, error:function(response) { } }); } function getTextContent(uuid,filename){ $.ajax({ type:"GET", url:ip + "/getgiteatext", headers: { authorization:token, }, dataType:"text", data:{ 'uuid':uuid, 'filename':filename }, async:false, success:function(json){ textContent = json; }, error:function(response) { } }); } /* function previewDataSetFile(uuid,filename){ console.log('uuid=' + uuid + " filename=" + filename); loadimg(uuid,filename); } function loadimg(uuid,filename){ img.src = ip + "/getgiteaimage?uuid=" + uuid + "&filename=" + filename; var fname = filename.substring(filename.lastIndexOf('/') + 1); $("#filename").text(fname); } */ function loadimg(){ var length = labeltastresult[fileindex].pic_image_field.length;  if(labeltastresult[fileindex].pic_image_field.substring(length - 5) == ".json"       || labeltastresult[fileindex].pic_image_field.substring(length - 4) == ".xml"      || labeltastresult[fileindex].pic_image_field.substring(length - 4) == ".txt"      || labeltastresult[fileindex].pic_image_field.substring(length - 4) == ".csv"      || labeltastresult[fileindex].pic_image_field.substring(length - 3) == ".md"      || labeltastresult[fileindex].pic_image_field.substring(length - 3) == ".py"      || labeltastresult[fileindex].pic_image_field.substring(length - 3) == ".sh"){ //文本 canvas.style.display="none"; document.getElementById("textcontent").style.display="block"; getTextContent(dataset_id,labeltastresult[fileindex].pic_image_field); $('#textcontent').height(canvas.height-40) $("#textcontent").text(textContent); }else{ if(labeltastresult[fileindex].pic_image_field.substring(length - 5) == ".jpeg"      || labeltastresult[fileindex].pic_image_field.substring(length - 4) == ".jpg"     || labeltastresult[fileindex].pic_image_field.substring(length - 4) == ".bmp"     || labeltastresult[fileindex].pic_image_field.substring(length - 4) == ".gif"     || labeltastresult[fileindex].pic_image_field.substring(length - 4) == ".png"){ canvas.style.display="block"; document.getElementById("textcontent").style.display="none"; img.src = ip + "/getgiteaimage?uuid=" + dataset_id + "&filename=" + labeltastresult[fileindex].pic_image_field; }else{ canvas.style.display="none"; document.getElementById("textcontent").style.display="block"; $('#textcontent').height(canvas.height) $("#textcontent").text("暂不支持预览"); } } var fname = tableData[fileindex].pic_image_field.substring(tableData[fileindex].pic_image_field.lastIndexOf('/') + 1); $("#filename").text(fname); } img.onload = function(){ canvas.width = document.getElementById("win_canvas").offsetWidth; canvas.height = document.getElementById("win_canvas").offsetHeight-40; //调整画布大小 // if ((img.width/img.height)<(canvas.width/canvas.height)){ // canvas.width=canvas.height * img.width / img.height; // } // else{ // canvas.height=canvas.width * img.height / img.width; // } drawimage(); } function isEmpty(str){ if(typeof str == "undefined" || str == null || str == ""){ return true; } return false; } function drawimage() { parse_labelinfo(labeltastresult[fileindex].label_info); // 清除画布,准备绘制 context.clearRect(0, 0, canvas.width, canvas.heigth); // modal_context.cleararc context.drawImage(img,0,0,img.width,img.height,0,0,canvas.width, canvas.height); for(var i=0; i this.points[i].x){ minX = this.points[i].x; } if(maxX < this.points[i].x){ maxX = this.points[i].x; } if(minY > this.points[i].y){ minY = this.points[i].y; } if(maxY < this.points[i].y){ maxY = this.points[i].y; } } return [minX, minY, maxX, maxY]; } this.id =""; //标识 this.blurred=false;//模糊不清的; 记不清的; 难以区分的; 模棱两可的 this.goodIllumination = true; //照明 this.frontview = true;//正面图 } function getCanvasLocationX(num){ return Math.round(num * canvas.width/parseInt(img.width)); } function getCanvasLocationY(num){ return Math.round(num * canvas.height/parseInt(img.height)); } function page(current,pageSize){ list(current,pageSize); showfilelist(); breadFiles(); loadimg(); setPage(tablePageData,pageSize); } getLabelInfo(dataset_id); showlabelflist(); function nextPage(){ var current = $('#displayPage1').text(); page(current,pageSize); } function prePage(){ var current =$('#displayPage1').text(); if(current > 1){ page(current - 2,pageSize); } } function goPage(){ var goNum = $('#goNum').val(); var pageTotal = $("#totalNum").text(); var pageNum = parseInt(pageTotal/pageSize); if(pageTotal%pageSize!=0){ pageNum += 1; }else { pageNum = pageNum; } if (goNum<=0){ alert("请输入大于0的数值"); } else if(goNum<=pageNum){ page(goNum - 1,pageSize); } else{ alert("不能超出总页码!"); } } $("#goNum").keydown(function (e) { if (e.keyCode == 13) { goPage(); } }); function setPage(pageData,pageSize){ if (isEmpty(pageData)){ return; } var startIndex = pageData.current * pageSize; if(pageData.total > 0){ startIndex = startIndex + 1; } if(startIndex < 10){ $('#startIndex').text(" " + (startIndex)); }else{ $('#startIndex').text(startIndex); } var endIndex = pageData.current * pageSize + pageData.data.length; if(endIndex < 10){ $('#endIndex').text(" " + (endIndex)); }else{ $('#endIndex').text(endIndex); } $('#totalNum').text(pageData.total); $('#displayPage1').text(pageData.current + 1); if(pageData.current == 0){ $('#prePage').removeAttr("href"); $('#prePage').attr('style','color:#f5f5f6;'); } else{ $('#prePage').attr("href","javascript:prePage()"); $('#prePage').attr('style','color:#000;'); } if((pageData.current + 1) * pageSize >= pageData.total){ $('#nextPage').removeAttr("href"); $('#nextPage').attr('style','color:#f5f5f6;') } else{ $('#nextPage').attr("href","javascript:nextPage()"); $('#nextPage').attr('style','color:#000;'); } var pageTotal = pageData.total; var pageNum = parseInt(pageTotal/pageSize); if(pageTotal%pageSize!=0){ pageNum += 1; }else { pageNum = pageNum; } $("#totalPageNum").text(pageNum); } function clickfilelist(index){ fileindex=index; loadimg(); //drawimage(); breadFiles() showfilelist(); } function clickNext(){ if(fileindex= tablePageData.total){ return; } nextPage(); } } function next(){ if(fileindex0) {fileindex=fileindex-1;} loadimg(); //drawimage(); breadFiles(); showfilelist(); } // function showfilelist(){ // var htmlstr=""; // for (var i=0;i"+ fname+ ""; // }; // document.getElementById("filelist").innerHTML=htmlstr; // } function showfilelist(){ // var filename_title = $('a.section:first').text() // filename_title = filename_title.substring(0,filename_title.lastIndexOf('.')) var filename_index = labeltastresult[0].pic_image_field.indexOf("/",70); filename_title = labeltastresult[0].pic_image_field.substring(filename_index + 1); filename_title = filename_title.substring(0,filename_title.indexOf('/')) var htmlstr = ''; // htmlstr += '
'; htmlstr += '
' htmlstr += '' htmlstr += '
' htmlstr += '
'+filename_title+'
' htmlstr += '
' for (var i=0;i 70){ var tmpIndex = labeltastresult[i].pic_image_field.indexOf("/",70); //console.log(tmpIndex) if(tmpIndex != -1){ fname = labeltastresult[i].pic_image_field.substring(tmpIndex + 1); fname = fname.substring(fname.indexOf('/')+1); } } htmlstr += '
' htmlstr += '
' if(i==fileindex){ htmlstr += '
'+fname+'
' } else{ htmlstr += '
'+fname+'
' } htmlstr += '
' htmlstr += '
' }; htmlstr += '
' htmlstr += '
' htmlstr += '
' document.getElementById("filelist").innerHTML=htmlstr; } function breadFiles(){ // for (var i=0;i 70){ // var tmp_index = labeltastresult[i].pic_image_field.indexOf("/",70); // if(tmp_index != -1){ // fname_full_path = labeltastresult[i].pic_image_field.substring(tmp_index + 1); // } // var fname_path = fname_full_path.split('/') // html_breadFile += '
'+fname_full_path+'.zip'+'
' // for(var i=1;i' // } // } // else{ // } // } var fname_full_path="" var filename_title = $('a.section:first').text() filename_title = filename_title.substring(0,filename_title.lastIndexOf('.')) var tmp_index = tableData[fileindex].pic_image_field.indexOf("/",70); if(tmp_index != -1){ fname_full_path = tableData[fileindex].pic_image_field.substring(tmp_index + 1); } var fname_path = fname_full_path.split('/') //console.log(fname_path) // var filename_text = tableData[fileindex].pic_image_field.substring(tableData[fileindex].pic_image_field.lastIndexOf('/')+1) var html_breadFile = '' // var source_name = filename_title+'.zip' // html_breadFile += '
'+source_name+'
' // html_breadFile += '
/
' html_breadFile += '
'+filename_title+'
' html_breadFile += '
/
' for (var i=0;i' html_breadFile += '
/
' } document.getElementById("breadFile").innerHTML=html_breadFile } function showlabelflist(){ if(!isEmpty(labelInfo)){ var resLabelInfo = JSON.parse(labelInfo) var textInfo = resLabelInfo["type"] var html_labelFile = '' for (var i=0;i${textInfo[i]}` } document.getElementById("labellist").innerHTML=html_labelFile setColor() } else{ return } } function setColor(){ colorinfo1 = ['rgba(0, 199, 255, 0.4)','rgba(114, 46, 209, 0.4)','rgba(188, 100, 164, 0.4)','rgba(153, 204, 0, 0.4)','rgba(51, 204, 153, 0.4)','rgba(255, 204, 51, 0.4)', 'rgba(71, 255, 71, 0.4)','rgba(255, 154, 71, 0.4)','rgba(71, 126, 255, 0.4)','rgba(71, 255, 255, 0.4)','rgba(255, 247, 71, 0.4)','rgba(196, 127, 255, 0.4)','rgba(233, 84, 100, 0.4)', 'rgba(255, 71, 204, 0.4)',' rgba(43, 199, 160, 0.4)'] colorinfo2 = ['#00C7FF','#722ED1','#BC64A4','#99CC00','#33CC99','#FFCC33','#47FF47','#FF9A47','#477EFF','#47FFFF','#FFF747','#C47FFF','#E95464','#FF47CC','#2BC7A0'] var el_span = document.querySelectorAll("span.labelInfo") for (var i=0;i