Image Processing with SAS Viya
- Article History
- RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
SAS Viya provides CAS actions for processing images. Combining these image processing actions with deep learning actions allows SAS Viya to step into the realm of computer vision.
SAS Viya image actions let you read and write images, process images, and manipulate the image data. SAS Viya deep learning actions let you construct and train convolutional neural networks, as well as score and deploy them.
What CAS actions are available?
Ten image processing CAS actions are currently available:
Select any image to see a larger version.
Mobile users: To view the images, select the "Full" version at the bottom of the page.
Ten deep learning CAS actions are available as part of the SAS Viya deep learning action set.
What can you do with CAS image actions?
Each image action lets you accomplish a number of tasks. Details on these are in the documentation , but I will briefly describe some capabilities of the processImages and augmentImages actions to whet your appetite.
processImages CAS action
The processImages action is quite rich. For example, it lets you:
- Create a patch from an image
- Detect edges (with Canny)
- Resize an image
- Calculate image derivatives
- Apply the Laplace operator
- Normalize images
- Apply a threshold
- Convert color spaces
- Blur an image
A plethora of examples including visuals using Python code are available in the SAS Viya 3.3 documentation.
See a few examples below:
augmentImages Action
The CAS augmentImages action lets you:
- Create patches–either sliding windows or rectangle coordinates
- Augment images, for example
- Rotate
- Flip
- Darken
- Process more than one patch or augmentation command in a single run
See the example from the documentation below:
An excellent demonstration on distinguishing images via Jupyter notebook and Python code that call CAS actions (Dolphins versus Giraffes) is available on Github.
Aside: We notice that in these images that none of the dolphins and none of the giraffes are wearing life preservers. This is because:
- The giraffes are safely on land and not in danger of falling into water over their heads. Not to mention that even baby giraffes are 6 feet tall, so water “over their heads” would have to be over 6 feet.
- The dolphins are proficient swimmers and many can hold their breath underwater for more than eight minutes.
The dolphin versus giraffe example using SAS Viya with python-dlpy is nicely laid out for you in a Jupyter notebook.
I hope I have piqued your interest. To learn more, spend some time looking at the documentation and the links below!
References and More Information
- Dolphin/giraffe image recognition demo on Github using Python code in a Jupyter notebook
- SAS Deep Learning Technical Concepts Documentation
- Convolutional Neural Networks, explained