Hacker News new | past | comments | ask | show | jobs | submit login
Advanced Image Manipulation and Data Extraction (algorithmia.com)
103 points by mikeyanderson on Dec 21, 2017 | hide | past | favorite | 20 comments



SmartTextExtraction looks like exactly what I need! However, I have to be able to run offline.

How can I download it and run the algorithm locally?

Tesseract gave me pretty poor results, probably because I'm using photos of printed pages instead of flatbed scans.



I have never achieved reliable results with Tesseract regardless of image quality.


did you tried pre processing the images before giving it to tesseract? i had very good results after pre processing the images.


Finally registered to Hacker News just to say thanks for this. I wanted to use Google Cloud for so long but because I'm in Europe, I can't use it for non-business purpose. The algorithms I'm interested in seem to work pretty well so far for what I tested (text detection).


Awesome. We're always available to help with anything you need. We have a chat box on every page and engineers ready to help. :)


    https://news.ycombinator.com/item?id=15965330

This was featured on HN a few days ago, it uses artifacts from the manufacturing process to extract data about which device took a photo. Is there any sort of algorithm on algorithmia at the moment that can give you this kind of information? Thank you, loved the post.


Thanks! Awesome idea. We don’t have such an algo yet but would love to bring one into our platform.

The link isn’t working for me — do you know if it is based on https://pdfs.semanticscholar.org/1526/db85a39d246c83f86d3469... ?

If we can get the dataset and methodology, we (or a community member!) can implement it and make it available & extendable for all to use: https://algorithmia.com/developers/algorithm-development/


https://gcn.com/articles/2017/12/19/smartphone-authenticatio...

The application is specific in this instance but can obviously be generalized. Thanks for the info, I'll keep this in mind.


Author here! Ask me anything :-)


What would be the advantage that Algorithmia offers vs building my own using my own training data?

Is Algorithmia like a marketplace where I can list my own API?

What are the response time like since it's serverless?


With Algorithmia you can write algos in Python, R, Scala, Rust, Java, Ruby and JavaScript. And you can call those algos from any language at all.

There’s solid dependency support, GPUs enabled, built-in versioning, automatic JSON APIs, etc. and the latency is about 15ms for warm responses.

While you’d still want to train your model offline or elsewhere in your own preferred environment, this provides a DevOps-free environment for hosting your algo. You don’t have to worry about building a VM, manually scaling load, etc. And algos are easily chainable / pipeline-able across languages and developers. So your local Python script can call a remote R routine which loops over a Java function, with basically zero overhead.

Algorithmia only charges per compute-second for use, not for hosting. And you can either make your API free, or charge a royalty per use.

Refs:

Creating an algo: https://algorithmia.com/developers/algorithm-development/lan...

Calling an algo: https://algorithmia.com/developers/clients/

Pricing: https://algorithmia.com/pricing

Platform overview: https://algorithmia.com/serverless-ai-layer


Thanks for the detailed answer....but I still don't get the why....but maybe because this is more for large teams?

I'm struggling to understand why I would use this over Google Cloud or Microsoft AI.

Am I misunderstanding the big picture here?


There are great reasons to use GCloud, MS AI, and the many other offerings out there. The ideal solution will vary by use case. Some considerations might be:

- serverless functions or full VM? With the former you pay by the second or minute, the latter is often by the hour or even month and many people use under 20% of the capacity they're paying for.

- what languages do you need? Many full VMs can support anything, but most serverless function hosts support very few languages.

- what frameworks do you need? Do you want to do a full install and dependency reconciliation, or have it done / managed for you?

- interoperability, API chaining, and marketplace. Algorithmia's language-agnostic open marketplace is pretty unique: you can use grab any of 4500+ APIs right from your own algo, without ever leaving the environment.

Happy to step through specific use-cases with you anytime! Just click the chatbox in the lower-right at Algorithmia.com


My comment is gonna sound harsh but I'm trying to understand what exactly the value is.

How do the OCR api in the marketplace holds up against Google Cloud, which is considered the best in the industry?

Do you see what I mean? All of the other things you've listed just wraps the core thing which is the actual algorithm. The serverless or having full VM doesn't cost much nor is it painful to setup imho. The language in the end does not matter since a developer could just make HTTP calls to the Google Cloud API. What good is having thousands of API when I just need a few that I know is the best in the industry?

I'm curious to know if there are real world use cases here. Perhaps for larger companies, what you offer might be important.

Thanks and I think that's the last of my questions!


No worries -- happy to answer!

Yep, there are definitely large companies using Algorithmia, and here's a quick summary of why it is important to them: https://algorithmia.com/enterprise ... short answer: increase server utilization from 20% -> 80% or higher, interoperably support heterogeneous languages & frameworks with no friction, and give their data scientists an extremely fast (< 30 seconds) way to make their models available to the app-development side of the house.

For people developing only a few algorithms and using them only themselves, on in just a few apps, setting up a VM can definitely be a good option. As soon as significant scaling or breadth comes into play (for example, dozens to hundreds of algos in different languages and frameworks), the maintenance time/cost begins to become a very serious factor. And while setting up a VM to support your custom framework set isn't insurmountably complex, it still takes tens of minutes to hours. In many cases, models can be fully deployed and ready in under a minute on Algorithmia, merely by uploading the model file and listing the dependencies (60-second signup-to-deploy video here: https://www.youtube.com/watch?v=qcsrPY0koyY )

As to specific algorithms, there are some awesome ones out there, but many are hosted by individual separate providers or, for the big providers, there may be just one variant of a solution. The beauty of Algorithmia is that it is a true marketplace: In the same way that GitHub allows any developer to provide and utilize code in any language (often with competing solutions to the same problems), Algorithmia allows developers to host algos in an interoperable marketplace, where there may be many possible solutions, some better in different situations, but they can all be utilized freely without changing anything but the name of the algo being called: https://algorithmia.com/algorithms/


Thanks for the great answer! You've handled my objections well. I am probably underestimating just how much of a hassle it is to setup environments to do lots of algorithms.


With the big guys you get a very productized API service. With the AI Marketplace we have thousands of algorithms that are constantly being improved and can easily be pipelined together. As more models are added from our data science / ML community you can easily upgrade your application by swapping out the APIs for the models.


There is some overlap with the IPOL journal : http://www.ipol.im/

It is an image processing journal where the source code of the articles is peer-reviewed, and all the algorithms can be tested online.


Great reference — thanks! Hopefully we can bring some of these algos into our platform!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: