Skip to main content

Creating Image Thumbnails

When I started working on this initially, I started looking into open source tools for this, after spending couple of hours on open source tools I suddenly jumped into oracle site and was pleased to see a good support for image processing in oracle.

Oracle provides support to create thumbnail of images stored as blob.

Here is simplest way to create image thumbnails.

Create a table that will store the original image and the thumbnail image content as blob.

CREATE TABLE test_thumbnail
(
id NUMERIC(12) PRIMARY KEY,
image_content BLOB,
thumbnail_content BLOB,
);

Create a stored procedure that will update the thumbnail_content field after image is stored in the database.

create or replace PROCEDURE IMAGE_THUMB_PROCEDURE (imgId IN NUMBER , imgAttribute IN varchar2) AS
imageId integer := 0;
verb varchar2(100);
src_blob BLOB;
dst_blob BLOB;
BEGIN

imageId := imgId;
verb := imgAttribute;

update test_thumbnail set thumbnail_content=empty_blob() where id = imageId;

select image_content into src_blob from test_thumbnail where id = imageId;

select thumbnail_content into dst_blob from test_thumbnail where id = imageId for update;

ordsys.ordimage.processCopy(src_blob ,verb ,dst_blob);

update test_thumbnail set thumbnail_content = dst_blob where id = imageId;

END IMAGE_THUMB_PROCEDURE;

Invoke the stored procedure passing the appropriate imgAttribute, passing different kind of image attributes you can process the original image content, for scaling down the image to a thumbnail of 100x100 pixels, pass the following parameter:

“maxscale=100 100 fileformat=jfif”

Maxscale is the size of the generated image and fileformat has its obvious meaning.

The method ordsys.ordimage.processCopy(src_blob ,verb ,dst_blob) copy a source blob into a destination blob doing the processing as per attributes passed as verb.

For more details on oracle media solution support please read the following article:
http://www.oracle.com/technology/sample_code/products/intermedia/index.html

Once the stored procedure is invoked image thumbnail is stored as blob in field thumbnail_content.

Comments

Popular posts from this blog

Listen Hindi Internet Radio Channels on PS3

PS3 is the best gadget i have ever used and its true "It only do everything". Having used it to play games, watch netflix, youtube and see my collection of pictures and listen to songs. I was searching for a way to play radio on PS3 and specifically "Hindi Internet Radio Channels" After spending couple of days, finally I have it working in few easy steps: 1. Download PS3 Media server on you laptop or PC: http://ps3mediaserver.blogspot.com/ 2. Open WEB.conf file of PS3 and add following lines: audiostream.Web,Radio=Desi Radio - www.desi-radio.com,http://76.73.90.27:80/ audiostream.Web,Radio=Desi-Radio - www.desi-radio.com,http://76.73.126.218:80/ 3. Restart PS3 Media Server 4. In your PS3, you should see PS3 Media server, open following path: Web -> Radio You should see "Desi Radio" in list. 5. Click on Desi Radio and you have live hindi songs streaming on your Ps3. I am searching more hindi internet radio channels, will update this blog when i find more...

MQTT : Android step by step guide using Eclipse Paho

For MQTT integration, recently explored Paho Android project, very simple to use, here are the steps: Intialize a client, set required options and connect.     MqttAndroidClient mqttClient = new MqttAndroidClient(BaseApplication.getAppContext(), broker, MQTT_CLIENT_ID);     //Set call back class     mqttClient.setCallback(new MqttCallbackHandler(BaseApplication.getAppContext()));     MqttConnectOptions connOpts = new MqttConnectOptions();     IMqttToken token = mqttClient.connect(connOpts); Subscribe to a topic.     token.setActionCallback(new IMqttActionListener() {       @Override       public void onSuccess(IMqttToken arg0) {            mqttClient.subscribe("TOPIC_NAME" + userId, 2, null, new IMqttActionListener() {                 @Override                 public void ...

Learn to Play Keyboard

One day I started searching internet about the same thing, how to play keyboard, went through a number of sites, blogs etc.. etc. But finally i learned it on my own, yes dont get surprised this is truth, because most of the sites will just provide you information on keyboard notes etc. But none of them tell you what goes wrong that you dont end up with success in keyboard playing. Well I am sharing my experience here, along with a couple of steps which I hope will be really helpful to you. Please read it like a story not like a lesson about keyboard learning, this will make it easy for you to learn keyboard. Also, this is for those who are busy with their life but still want to lean to play keyboard. First and foremost thing: a) Keep your keyboard at a place, where you can see it, see it in the morning when you get up, see it easily when you go around in your home, dont dump it into an almirah or trunk, this helps, dont get surprised, because everytime you see it at the back of the min...