whatohyou
whatohyou
안녕하세요, 저는 몆 년전에 c#로 버블리더라는 프로그램을 만들었습니다. 만화의 말풍선을 클릭해주거나 박스로 따오면 이미지 전처리로 안의 텍스트부분을 가져오고 아네모네-이지트랜스를 통해서 번역해서 화면에 자막처럼 번역 내용을 표시해주는 프로그램입니다. 제작자님이 언젠가 만들어야지...
It took me like 5 hours to try to compile this and cl.exe not found, repairing vs2017 and etc....
https://github.com/tesseract-ocr/tessdata/blob/master/best/jpn.traineddata Very nice. https://github.com/tesseract-ocr/tessdata/blob/master/best/jpn_vert.traineddata Does not work for PSM 6(default) mode. If you add "-l jpn + jpn_vert" option, it will read vertical text in a horizontal way therefore result...
audio.src = 'data:audio/wav;base64,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qJrx4KOQjahZxWbcZgztj2c49nKmkId44S71j0c8eV9yDK6uPRzx5X18eDvjvQ6yKo9ZSS6l//8elePK/Lf//IInrOF/FvDoADYAGBMGb7FtErm5MXMlmPAJQVgWta7Zx2go+8xJ0UiCb8LHHdftWyLJE0QIAIsI+UbXu67dZMjmgDGCGl1H+vpF4NSDckSIkk7Vd+sxEhBQMRU8j/12UIRhzSaUdQ+rQU5kGeFxm+hb1oh6pWWmv3uvmReDl0UnvtapVaIzo1jZbf/pD6ElLqSX+rUmOQNpJFa/r+sa4e/pBlAABoAAAAA3CUgShLdGIxsY7AUABPRrgCABdDuQ5GC7DqPQCgbbJUAoRSUj+NIEig0YfyWUho1VBBBA//uQZB4ABZx5zfMakeAAAAmwAAAAF5F3P0w9GtAAACfAAAAAwLhMDmAYWMgVEG1U0FIGCBgXBXAtfMH10000EEEEEECUBYln03TTTdNBDZopopYvrTTdNa325mImNg3TTPV9q3pmY0xoO6bv3r00y+IDGid/9aaaZTGMuj9mpu9Mpio1dXrr5HERTZSmqU36A3CumzN/9Robv/Xx4v9ijkSRSNLQhAWumap82WRSBUqXStV/YcS+XVLnSS+WLDroqArFkMEsAS+eWmrUzrO0oEmE40RlMZ5+ODIkAyKAGUwZ3mVKmcamcJnMW26MRPgUw6j+LkhyHGVGYjSUUKNpuJUQoOIAyDvEyG8S5yfK6dhZc0Tx1KI/gviKL6qvvFs1+bWtaz58uUNnryq6kt5RzOCkPWlVqVX2a/EEBUdU1KrXLf40GoiiFXK///qpoiDXrOgqDR38JB0bw7SoL+ZB9o1RCkQjQ2CBYZKd/+VJxZRRZlqSkKiws0WFxUyCwsKiMy7hUVFhIaCrNQsKkTIsLivwKKigsj8XYlwt/WKi2N4d//uQRCSAAjURNIHpMZBGYiaQPSYyAAABLAAAAAAAACWAAAAApUF/Mg+0aohSIRobBAsMlO//Kk4soosy1JSFRYWaLC4qZBYWFRGZdwqKiwkNBVmoWFSJkWFxX4FFRQWR+LsS4W/rFRb/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////VEFHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAU291bmRib3kuZGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjAwNGh0dHA6Ly93d3cuc291bmRib3kuZGUAAAAAAAAAACU=' --replace your audio.src with above to play beeping noise so your browser will not have to download that ogg file again and again
Bug: Script uses too much memory after few hours. Firefox uses about 1GB ram. It seems like your script is saving all past pages as variable. Only solution so far...
function riddleSubmit(answer) { if (!window.opener) { gE('#riddleanswer').value = answer gE('#riddleanswer+img').click() setTimeout(function () { goto() }, 300) } else { post(window.location.href, function () { setTimeout(function () { window.close() window.opener.document.window.location.href = window.location.href...
End of march 2019 release version of firefox will automatically stop the riddle alarm from playing. To fix it, https://hacks.mozilla.org/2019/02/firefox-66-to-block-automatically-playing-audible-video-and-audio/ refer to the above site. or, Click the site information...
My settings are following: {"version":"2.90","lang":"2","channelSkillSwitch":true,"buffSkillSwitch":true,"skillSwitch":true,"hp1":60,"mp1":70,"sp1":75,"attackStatus":0,"pauseButton":true,"pauseHotkey":true,"pauseHotkeyStr":"F10","pauseHotkeyCode":121,"notification":true,"riddleRadio":true,"encounter":true,"middleSkillCondition":{"0":["oc,3,60"]},"highSkillCondition":{"0":["oc,3,120"]},"turnOnSS":true,"turnOnSSCondition":{"0":["monsterAlive,3,6","oc,3,220","sp,1,20"],"1":["bossAlive,3,1","oc,3,200","sp,1,20"],"2":["roundType,5,\"ba\"","oc,3,60","sp,1,20","bossAlive,5,0"],"3":["oc,1,230","sp,1,70"]},"turnOffSS":true,"turnOffSSCondition":{"0":["monsterAlive,4,3","roundLeft,1,1","bossAlive,4,1","oc,4,150","roundType,5,ar"],"1":["bossAlive,3,1","hp,1,80","oc,4,100"],"2":["roundType,5,\"ba\"","bossAlive,3,1","oc,2,20","sp,2,30"]},"focus":true,"focusCondition":{"0":["mp,4,80","monsterAlive,4,2","oc,1,30","hp,3,80","roundLeft,3,2","roundType,6,\"rb\""]},"delayAlert":true,"delayAlertTime":30,"delayReload":true,"delayReloadTime":10,"riddleAnswerTime":3,"staminaLose":5,"staminaPause":true,"staminaWarn":true,"idleArena":true,"idleArenaTime":5,"idleArenaLevels":"10,20,30,40,50,60,70,80,90,100,110,120,130,140,150,165,180,200,225,250,300","idleArenaValue":"1,3,5,8,9,11,12,13,15,16,17,19,20,21,23,24,26,27,28,29,32,33","arLevel":{"1":true,"10":true,"20":true,"30":true,"40":true,"50":true,"60":true,"70":true,"80":true,"90":true,"100":true,"110":true,"120":true,"130":true,"140":true,"150":true,"165":true,"180":true,"200":true,"225":true,"250":true,"300":true},"idleArenaGrTime":10,"repairValue":0,"autoFlee":true,"fleeCondition":{"0":["hp,4,70","mp,4,10","monsterAlive,3,2","oc,4,25"]},"staminaLow":30,"delay":200,"delay2":30,"itemOrderName":"Cure,HP,MP","itemOrderValue":"311,11195,11295","itemOrder":{"Cure":true,"HP":true,"MP":true},"item":{"Cure":true,"HP":true,"MP":true},"itemCureCondition":{"0":["hp,4,60"]},"itemHPCondition":{"0":["hp,4,60","mp,4,30"]},"itemMPCondition":{"0":["mp,4,20","oc,4,30","monsterAll,3,5"]},"channelSkill":{"Pr":true,"Re":true},"channelSkill2":true,"channelSkill2OrderName":"Re,Pr,Cu","channelSkill2OrderValue":"312,411,311","channelSkill2Order":{"Cu":true,"Pr":true,"Re":true},"buffSkillOrderValue":"Ha,Pr,Re,SL,SS,He","buffSkillOrder":{"Pr":true,"SL":true,"SS":true,"Ha":true,"He":true,"Re":true},"buffSkill":{"HD":true,"MD":true,"SD":true,"Pr":true,"SL":true,"SS":true,"Ha":true,"He":true,"Re":true},"buffSkillHDCondition":{"0":["hp,4,70","_isCd_11191,4,0"]},"buffSkillMDCondition":{"0":["mp,4,80","_isCd_11291,4,0"]},"buffSkillSDCondition":{"0":["sp,4,60","roundLeft,1,1","_isCd_11391,4,0"],"1":["roundType,5,\"rb\"","sp,4,60","_isCd_11391,4,0"],"2":["sp,4,60","bossAlive,3,1","_isCd_11391,4,0"]},"buffSkillPrCondition":{"0":["mp,3,10","_isCd_411,5,0"]},"buffSkillSLCondition":{"0":["mp,3,10","_isCd_422,5,0"]},"buffSkillSSCondition":{"0":["sp,1,30","monsterAlive,3,3","mp,3,30","_isCd,423,5,0"],"1":["sp,1,30","bossAlive,3,1","mp,3,30","_isCd,423,5,0"]},"buffSkillHaCondition":{"0":["mp,3,30","_isCd_412,5,0"]},"buffSkillHeCondition":{"0":["mp,3,70","_isCd_431,5,0"]},"buffSkillReCondition":{"0":["mp,3,10","_isCd_312,5,0"]},"debuffSkillTurn":{"Sle":0,"Bl":0,"Slo":0,"Im":0,"MN":0,"Si":0,"Dr":0,"We":0,"Co":0},"skillOrderValue":"OFC,T1,T2,T3","skillOrder":{"OFC":true,"T3":true,"T2":true,"T1":true},"skill":{"OFC":true,"T3":true,"T2":true,"T1":true},"skillOTOS":{"OFC":true},"skillOFCCondition":{"0":["monsterAlive,1,5","oc,3,200","bossAlive,5,0","_isCd_1111,5,0"]},"skillFRDCondition":{"0":["bossAlive,1,10","oc,1,250"]},"fightingStyle":"2","mercifulBlow":true,"skillT3Condition":{"0":["oc,3,50","_isCd_2203,5,0"]},"skillT2Condition":{"0":["oc,3,90","_isCd_2202,5,0","_isCd_1111,1,0"]},"skillT1Condition":{"0":["oc,3,120","_isCd_2201,5,0"]},"audioEnable":{"Defeat":true,"Riddle":true},"audio":{"Defeat":"Lost battle","Riddle":"Riddle encountered"},"weight":{"Sle":5,"Bl":3,"Slo":3,"Im":-5,"MN":-4,"Si":-4,"Dr":-4,"We":-4,"Co":-1,"CM":-5,"Stun":-4,"PA":-4,"BW":-4},"ruleReverse":true,"dropQuality":"0","roundNow":"79","roundAll":"110"}
//if you convert srt->srt then 2nd+ line of text will be ignored. so I made it this way... //I regret doing it though. I could simply convert srt->smi then switch...
About 2 month ago, tesseract have been updated to provide much better segmentation method. So OCR accuracy should have been improved greatly for certain languages. Please update your nuget package...