Shaaf's blog

A technical blog about Java, Kubernetes and things that matter

Processing images in Java with OpenCV and Quarkus

If you are into Computer vision, you probably are familiar with OpenCV. Its an amazing library that has almost everything one needs to do 2D and 3D processing and much more. Gesture recognition, face detection, Motion tracking, think of anything related to image processing and OpenCV can be your goto. Its based on the BSD license, so you can just download it and start using it.

OpenCV is written in C, and there are nice Java bindings for it too. If you are a Java developer like me and dont want to get into all the loading and building native bindings etc., then read on. In this article I will show how you can use OpenCV with the popular new framework Quarkus, without worrying about installing libraries or reloading the entire app.


SQL cache stores and more in Data Grid 8.3

Orignally posted at Red Hat Developers

Red Hat Data Grid is a distributed, cloud-based datastore offering very fast response times as an in-memory database. The latest version, Data Grid 8.3, features cross-site replication with more observability and two new types of SQL cache store for scaling applications with large datasets. This version also brings improved security, support for Helm charts, and a better command-line interface (CLI).

This article is an overview of new features and enhancements in this latest version of Red Hat Data Grid.


What's new for developers in Java 18

Orignally posted at Red Hat Developers

In exciting news for Java developers, Java 18 forked off from the main line at the end of last year and has entered Rampdown Phase Two. This article highlights some of the features that developers can look for in the upcoming Java 18 release, including the new simple web server module, a more sophisticated way to annotate your Javadocs, and the –finalization=disabled option, which lets you test how a Java application will behave when finalization is removed in a future release. See the end of the article for where to download Java 18 in early access builds.


Deploy Quarkus everywhere with Red Hat Enterprise Linux (RHEL)

Orignally posted at Red Hat Developers

Java is one of the most used languages out there and has been in the top three for the last two decades. Java powers millions of applications across verticals and platforms. Linux is widely deployed in data centers, Edge networks, and Cloud. Today we announce the availability of Quarkus for all our Red Hat Enterprise Linux (RHEL) customers. If you are running RHEL, you can now also run Red Hat Build of Quarkus (RHBQ). By doing this, we enable our customers, partners, and software vendors to use RHBQ in their applications with ease and furthermore enable them to deploy Quarkus for multiple use-cases for Java on Linux. If you are developing applications on a Kubernetes platform like Openshift, you can also use RHBQ with it, and this was announced last year. What is Quarkus and how can I develop and deploy it on RHEL? Learn more in this post.


Creating and deploying a Java 8 runtime container image

Orignally posted at Red Hat Developers

A Java runtime environment should be able to run compiled source code, whereas a development kit, for example, OpenJDK, would include all the libraries/binaries to compile and run the source code. Essentially the latter is a superset of the runtime environment. More details on OpenJDK support and lifecycle can be found here.

Red Hat ships and supports container images with OpenJDK for both Java 8 and 11. More details are here. If you are using Red Hat Middleware, the s2i images shipped are also useful to deploy, for example, on Red Hat Openshift Container Platform.