[{"data":1,"prerenderedAt":319},["ShallowReactive",2],{"project-7520216":3},{"id":4,"name":5,"line":5,"line_source":6,"title":7,"url":8,"domain":9,"maker":10,"posted_at":11,"year":12,"points":13,"comments":14,"rank_in_year":15,"shown_in_year":16,"top":17,"tier":18,"category":19,"subcategory":20,"format":21,"keywords":22,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":34,"aspects":35,"strip":41,"post_text":44,"what":45,"said":70,"maker_in_thread":181,"shape":188,"grid":192,"attempts":282,"same_week":283,"maker_shows":37,"maker_hidden":312,"reader_version":313,"card":314},"7520216","Digitizing photos of whiteboards using the command line","title","Show HN: Digitizing photos of whiteboards using the command line","https:\u002F\u002Fgist.github.com\u002Flelandbatey\u002F8677901","gist.github.com","lelandbatey",1396487403,2014,186,36,117,2272,6,"notable","dev_tools","image processing script","cli",[23,24,25,26,27],"whiteboard","imagemagick","bash","image cleanup","photo scan","loved",0.39,{"positive":31,"neutral":32,"mixed":33,"critical":33},9,8,1,19,{"execution":36,"performance":39,"idea":40},{"positive":37,"critical":38},4,0,{"positive":33,"critical":33},{"positive":33,"critical":38},[42,43,43,42,43,38,38,38,42,38,42,42,38,38,43,38,38,38,33,38,38,38,43,38,38,38,43,38,43,42,42,43,43,42,42,38],5,3,null,{"problem":46,"audience":44,"pricing":44,"motivation":44,"time_to_build":44,"stack":54,"openness":69,"stage":69,"team_size":69},{"value":47,"source":48,"evidence":49},"Photos of whiteboards come out poorly; the script cleans them up","commenter",[50],{"id":51,"by":52,"text":53},"7520568","BorisMelnik","very nice, never experimented with modifying images via command line but was able to understand the process via shell parameters. also photos of whiteboards always come out…",[55,62],{"value":56,"source":48,"evidence":57},"Bash",[58],{"id":59,"by":60,"text":61},"7521791","kaeluka","If you want to handle input file names including spaces, just wrap the $1 into parens: #!\u002Fbin\u002Fbash convert \"$1\" -morphology ...",{"value":63,"source":48,"evidence":64},"ImageMagick",[65],{"id":66,"by":67,"text":68},"7520642","NamTaf","Great work, thanks heaps for this! This'll help me clean up files quickly and easily, as we do the same thing a lot of the time too :) NB: This works fine on the Windows version…","unknown",{"praise":71,"objections":92,"requests":118,"questions":137,"alternatives":152},[72,81],{"value":73,"source":48,"evidence":74},"Results look much cleaner than original photos",[75,79,80],{"id":76,"by":77,"text":78},"7520684","ollyfg","Looks much better than the original photos. On a slightly related note, camscanner, an app for android (and IOS?) does something similar, but can also correct for the angle at…",{"id":51,"by":52,"text":53},{"id":66,"by":67,"text":68},{"value":82,"source":48,"evidence":83},"Useful technique for cleaning scans and drawings",[84,88],{"id":85,"by":86,"text":87},"7522389","mjhoy","Nice. Works well for drawings\u002Fcomics. http:\u002F\u002Fimgur.com\u002Fa\u002FXvu7K",{"id":89,"by":90,"text":91},"7521263","tsenkov","Awesome, thanks!",[93,108],{"value":94,"source":48,"evidence":95},"Fails or performs poorly on low-resolution images",[96,100,104],{"id":97,"by":98,"text":99},"7521328","diegocr","I got excited when i saw the results since they looked awesome, such that I thought I could replace my quick&dirty transparent GIFs script[1], but apparently it has issues with…",{"id":101,"by":102,"text":103},"7521109","unclesaamm","I'm having the same issue as magus: https:\u002F\u002Fgist.github.com\u002Flelandbatey\u002F8677901#comment-1204432",{"id":105,"by":106,"text":107},"7521156","ekianjo","It's because you did not use the full resolution pictures, apparently.",{"value":109,"source":48,"evidence":110},"Gist-compressed sample images produced poor output",[111,115],{"id":112,"by":113,"text":114},"7521245","fuzzythinker","github compressed the upload, get the originals from links from his response: https:\u002F\u002Fgist.github.com\u002Flelandbatey\u002F8677901#comment-1204480",{"id":116,"by":10,"text":117},"7521552","Here's the comment I posted on the Gist, copy-pasted to here: @molven, @vibragiel: Wow, I feel more than a bit ridiculous after looking into this. Turns out, those original…",[119,126,130],{"value":120,"source":48,"evidence":121},"Add OCR to extract text",[122],{"id":123,"by":124,"text":125},"7520554","Synergyse","Nice idea, would it be possible to do some OCR at the end?",{"value":127,"source":48,"evidence":128},"Correct perspective angle like CamScanner",[129],{"id":76,"by":77,"text":78},{"value":131,"source":48,"evidence":132},"Support for blackboards",[133],{"id":134,"by":135,"text":136},"7521916","n3t","I'd like to see similar script for blackboards (greenboards?).",[138,145],{"value":139,"source":48,"evidence":140},"How to handle small images",[141],{"id":142,"by":143,"text":144},"7526117","icegreentea","For those of you who would like to use this on smaller images, play around with \"DoG:15,100,0\". This string refers to implementing a difference of gaussian filter with inner…",{"value":146,"source":48,"evidence":147},"Workflow for attaching whiteboard images to tasks",[148],{"id":149,"by":150,"text":151},"7521636","mntmn","I'm doing an online whiteboard (spacedeck.com) and always wondering how to bridge the analog\u002Fphysical world of whiteboard scribbles and sticky notes and software. How would you…",[153,163,170,177],{"value":154,"source":48,"evidence":155},"iOS and Android scanning apps",[156,159],{"id":157,"by":67,"text":158},"7520649","There's a whole heap of iOS 'scanning' apps that do this sort of thing device-side.",{"id":160,"by":161,"text":162},"7523509","dirkgently","Or Android.",{"value":164,"source":48,"evidence":165},"unpaper",[166],{"id":167,"by":168,"text":169},"7524001","dfc","Take a look at unpaper instead. It was designed for postprocessing scanned documents. The only thing it does not do is the Evernote upload: https:\u002F\u002Fgithub.com\u002FFlameeyes\u002Funpaper",{"value":171,"source":48,"evidence":172},"Tesseract OCR",[173],{"id":174,"by":175,"text":176},"7520820","contingencies","Take a look at Tesseract, which last time I looked was the best codebase to use in this area. It's part of Google's open source multilingual OCR suite, which is in two parts…",{"value":178,"source":48,"evidence":179},"CamScanner",[180],{"id":76,"by":77,"text":78},{"comments":182,"answered":33,"key":183},2,[184,185],{"id":116,"text":117},{"id":186,"text":187},"7521580","I did experiment with using this to bring out the text in photos of books. Here's an example: Input image - http:\u002F\u002Fi.imgur.com\u002F6o5FwxG.jpg Output image -…",{"commenters":189,"max_depth":37,"maker_replies":182,"first_comment_mins":190,"lifespan_hours":191},32,82,24,[193,195,197,199,203,207,209,210,213,217,218,221,223,225,228,229,233,235,239,242,243,244,246,248,249,252,254,257,258,261,264,266,268,271,274,278],[66,38,42,194,67,38],"project\u002Fpositive\u002Fexecution",[97,33,43,196,98,38],"project\u002Fmixed\u002Fperformance",[142,182,43,198,143,38],"project\u002Fneutral\u002Fexecution",[200,43,42,201,202,38],"7523514","maker\u002Fpositive\u002Fnone","tokenizerrr",[204,37,43,205,206,38],"7520567","project\u002Fneutral\u002Fidea","kschua",[157,37,38,208,67,38],"other\u002Fneutral\u002Fnone",[160,37,38,208,161,38],[211,37,38,208,212,38],"7523796","Theodores",[214,42,42,215,216,38],"7521104","project\u002Fpositive\u002Fidea","heisenzombie",[167,42,38,208,168,38],[219,17,42,194,220,38],"7523202","metatation",[76,222,42,194,77,38],7,[224,222,38,208,175,38],"7520814",[226,222,38,208,227,38],"7521545","goblin89",[59,32,43,198,60,38],[230,32,38,231,232,38],"7523095","commenter\u002Fneutral\u002Fnone","jessaustin",[149,31,38,234,150,38],"other\u002Fneutral\u002Fidea",[236,237,38,208,238,38],"7520713",10,"avmich",[101,240,33,241,102,38],11,"project\u002Fcritical\u002Fperformance",[105,240,38,231,106,38],[112,240,38,231,113,38],[116,240,38,245,10,33],"maker\u002Fneutral\u002Fexecution",[123,247,43,205,124,38],12,[174,247,38,208,175,38],[250,247,38,208,251,38],"7520909","arjie",[253,247,38,208,175,38],"7520970",[255,247,43,205,256,38],"7520944","thejosh",[186,247,38,245,10,33],[259,247,43,198,260,38],"7523928","jbondeson",[85,262,42,263,86,38],13,"project\u002Fpositive\u002Fperformance",[51,265,42,194,52,38],14,[134,267,43,205,135,38],15,[269,267,43,198,270,38],"7528316","garblegarble",[89,272,42,273,90,38],16,"project\u002Fpositive\u002Fnone",[275,276,42,273,277,38],"7521361",17,"NicoJuicy",[279,280,38,208,281,38],"7521693",18,"Myrmornis",[],[284,289,293,298,303,307],{"id":285,"name":286,"points":287,"category":288},"7547942","Untrusted",555,"games",{"id":290,"name":291,"points":292,"category":19},"7524956","GitBook",442,{"id":294,"name":295,"points":296,"category":297},"7533368","InstaMotor",234,"web_saas",{"id":299,"name":300,"points":301,"category":302},"7546858","Jasper",191,"ai",{"id":304,"name":305,"points":306,"category":19},"7524144","Sysdig",171,{"id":308,"name":309,"points":310,"category":311},"7542985","Siri, open the garage",129,"hardware",false,"v2",{"id":315,"name":5,"line":5,"ai":312,"cat":19,"year":12,"points":13,"comments":14,"rec":28,"s":29,"top":17,"kw":316,"maker":10,"domain":9,"tier":18,"attempts":38,"strip":317,"url":8,"mix":318,"praise":73,"objection":94,"sub":20},7520216,[23,24,25,26,27],"533530005055003000100030003035533550",[31,32,33,33],1793990904262]