Image Compression and Decompression Using ARM9

DOI : 10.17577/IJERTV3IS10389

Download Full-Text PDF Cite this Publication

Text Only Version

Image Compression and Decompression Using ARM9

V. Kusuma Kumari1

,

B. Satya Sri Devi2

3

Udara Yedukondalu

1 Assistant Professor, 2Assistant Professor, 3Associate Professor, 1Aditya Engineering College, 2Aditya Engineering 3Aditya Engineering College 1Surampalem, AP, INDIA. 2Surampalem, AP, INDIA. 3Surampalem, AP, INDIA

Abstract: Currently on the market most of the IMAGE COMPRESSION AND DECOMPRESSION system is

based on DSP. These image compression and decompression systems are high cost, great power consumption, and volume restriction, due to these limitations which DSP processors are not suitable for some simple applications. With the development of image processing technology, image acquisition system which based on ARM is more and more popular. Everywhere commonly used image compression technique is jpeg. So implementation of such jpeg in ARM9 board and with the help of growing technology is more useful. The camera will capture the image and send it to controller. The controller will save the image in jpg format. Also it loads the same image into another IPL(Image Processing Language)image. By using jpg compression factor set the image quality. Compressing and decompressing image is also same by using jpg compression factor. Like that we are compressing and decompressing the images by using MINI 2440 board and Embedded Linux and display it on TFT touch screen display.

Keywords: ARM9, USB Camera, Display

  1. INTRODUCTION

    The objective behind the project is to design IMAGE COMPRESSION AND

    DECOMPRESSION. Compressing an image is Significantly different than compressing raw binary

    data. Of course, general purpose compression programs can be used to compress images, but the result is less

    than optimal. This is because images have certain statistical properties which can be exploited by encoders specifically designed for them. Also, some of the finer details in the image can be sacrificed for the sake of saving a little more bandwidth or storage space.

    This also means that lossy compression techniques can be used in this area.

    fig. 2.1 Block diagram of Image Compression and Decompression

  2. SYSTEM ARCHITECTURE

    With the development of image processing technology, image acquisition system which based on ARM is more popular. The camera will capture the image and send it to controller through USB device. The controller will save the image in jpg format. Also it loads the same image into another Compression and Decompression ipl (Image Processing Language) image. By using jpg compression factor set the image quality. Compressing and decompressing image is also same by using jpg compression factor.

    Like that we are compressing and decompressing the images by using MINI 2440 board and Embedded Linux and display it on TFT touch screen display. The ARM processor is operated on regulated power supply

    i.e. is 5V. We are going use S3C2440 based microcontroller, which the current dominant microcontroller in mobile based products.

  3. S3C2440MICROCONTROLLR

    The S3C2440X is a 16/32-bit RISC microprocessor, which is designed to provide a cost- effective, low-power capabilities, high performance Application Processor solution for mobile phones and general applications. To provide optimized H/W performance for the 2.5G & 3G communication services, the S3C2440X adopts 64/32-bit internal bus architecture. The 64/32-bit internal bus architecture is composed of AXI, AHB and APB buses. It also includes many powerful hardware accelerators for tasks such as motion video processing, audio processing, 2D graphics, display manipulation and scaling. An integrated Multi Format Codec (MFC) supports encoding and decoding of MPEG4/H.263/H.264 and decoding of VC1. This H/W Encoder/Decoder supports real-time video conferencing and TV out for both NTSC and PAL mode. Graphic 3D (hereinafter 3D Engine) is 3D Graphics Hardware Accelerator which can accelerate OpenGL ES 1.1 & 2.0 rendering.To reduce total system cost and enhance overall functionality, the S3C2440X includes many hardware peripherals such as a Camera Interface, TFT 24-bit true color LCD controller, System Manager (power management & etc.), 4-channel UART, 32-channel DMA, 5-channel 32bit Timers with 2PWM output, General Purpose I/O Ports, I2S-Bus interface, I2C-BUS interface, USB Host, USB OTG Device operating at high speed (480Mbps), 3-channel SD/MMC Host Controller and PLLs for clock generation.

      1. WORKING PRINCIPLE:

        The Mini 2440 Single Board Computer is a high-performance controller board. It is designed

        Fig: 3.1 Hardware architecture of ARM9

        based on the S3C2440 microcontroller, 256MByte DDR SDRAM, 1GByte NAND Flash, RTC, Audio and net on board. It has integrated RS232, USB, Ethernet, Audio In/Out, Keyboard, LCD, CVBS, TV out, camera in, SD card and more other functions on board. So many hardware resources provided by the expansion board, it becomes a solid reference board for customer design. We also offer a complete software development package to customers. The board supports Linux 2.6.28, Android2.1 and Windows CE 6.0 operating system and is provided with complete basic drivers which enable a quick channel to evaluate the Samsung S3C2440 processor and customize application software. It would be an ideal development platform for multimedia and communication applications.

        We cannot get S3C2440 microcontroller individually. We will get it in the form of FRIENDLY ARM board else, we can call it as Mini 2440 board.

        In order to work with ARM 11 micro- controllers we require 3 things. They are as follows.

        • Boot Loader

        • Kernel

        • Root File System

        Figure 3.2: Mini 2440 Board

        1. Boot loader: The main functionality of boot loader is to initialize all the devices that are present on the motherboard of Mini 2440 and at the same time to find out whether any problem or any other fault is there in the devices that are present on that motherboard of Mini 2440.

          The other feature of the boot loader is to find out what are the different operating systems that are present in the standard storage devices and to show it on to the display device so that user can select between the operating systems into which he wants to enter.

          One other feature of the boot loader is to load operating system related files byte by byte into the temporary memory like RAM. In our current project, we are using boot loader like Supervivi, which is Mini 2440 specific.

        2. Kernel: The core part of an operating system we can call like kernel. Operating system will perform its functionalities like file management, process

          management, memory management, network management and interrupt management with the help of the kernel only. kernel holds the device related drivers that are present on the motherboard. friendly arm board supports for operating systems like symbian, android, embedded linux, win ce. however, in all these operating systems embedded linux will provide high security to drivers and files. therefore, in our current project we are making use of kernel of embedded linux with which device related drivers that are present on the motherboard of friendly arm board will automatically come when we load embedded linux related kernel.

        3. Root File System: File system will tell how files arrangement there inside the internal standard storage devices. In embedded Linux, kernel treats everything as a file even the input and output devices. In embedded Linux, Root is the parent directory it containsother sub- directories like dev, lib, home, bin, sbin, media, mnt, temp, proc, etc, opt and etc. According to our application, we will interface some external devices also.

        All the devices means internal devices that are present on the motherboard of MINI 2440 will get their corresponding drivers when we load Embedded Linux related kernel. However, these device drivers require micro-controller related header files and some other header files, which will be present in the lib directory, which is present in the root directory. In addition, the devices related drivers would be present in the dev directory, which is again present in the root directory. Therefore, whenever we will load the Root File System then we will get different directories, which will be helpful to the kernel. So compulsorily, we need to load the Root File System. MINI 2440 specific Root File System is Root Qtopia.

        The essential programs that are required in order to work with Mini 2440 like Boot-loader,

        Embedded Linux related Kernel, Root File System will be loaded into the NOR-flash which is present on the Mini 2440 board itself. The program related with the application will be loaded into NAND flash, which is also present on the Mini 2440 board itself. By using bootstrap switch that is present on the Mini 2440 will help the user to select NOR or NAND flash. After that by using DNW tool we can load Boot loader, Embedded Linux related kernel and Root File System into NOR-flash by using USB cable and the application related program into NAND flash.

        Once loading everything into Mini 2440 board it starts working based on the application program that we have loaded into the NAND flash. The system uses USB webcam which is connected to ARM9 board through USB device. The webcam draw one region before capturing the pedestrian. The webcam captures the pedestrian present in the region only in the form of frames by using Open CV library later it retrieves image pixel data. It compares the captured image with Haar features of a pedestrian image which is stored in the form of .xml file.

        If the Haar features are matched with captured image, buzzer will turn on. If any pedestrian is not detected, the alarm will be turned off till the pedestrian is detected.

      2. TECHNOLOGIES

        There are a variety of touch screen technologies:

        1. Resistive Touch Screen

          A resistive touch screen panel is composed of several layers, the most important of which are two thin, electrically conductive layers separated by a narrow gap. When an object, such as a finger, presses down on a point on the panel's outer surface the two metallic layers become connected at that point: the panel then behaves as a pair of voltage dividers with

          connected outputs. This causes a change in the electrical current, which is registered as a touch event and sent to the controller for processing.

        2. Surface Acoustic Wave

          Surface acoustic wave (SAW) technology uses ultrasonic waves that pass over the touch screen panel. When the panel is touched, a portion of the wave is absorbed. This change in the ultrasonic waves registers the position of the touch event and sends this information to the controller for processing. Surface wave touch screen panels can be damaged by outside elements. Contaminants on the surface can also interfere with the functionality of the touch screen.

          1. Dispersive signal technology

    Introduced in 2002 by 3M, this system uses sensors to detect the mechanical energy in the glass that occurs due to a touch. Complex algorithms then interpret this information and provide the actual location of the touch. The technology claims to be unaffected by dust and other outside elements, including scratches. Since there is no need for additional elements on screen, it also claims to provide excellent optical clarity. Also, since mechanical vibrations are used to detect a touch event, any object can be used to generate these events, including fingers and stylus. A downside is that after the initial touch the system cannot detect a motionless finger.

    3.2.2.2 Acoustic pulse recognition

    This system, introduced by Tyco International's Elo division in 2006, uses piezoelectric transducers located at various positions around the screen to turn the mechanical energy of a touch (vibration) into an electronic signal. The screen hardware then uses an algorithm to determine the location of the touch based on the transducer signals. The touch screen itself is made of

    ordinary glass, giving it good durability and optical clarity. It is usually able to function with scratches and dust on the screen with good accuracy. The technology is also well suited to displays that are physically larger. As with the Dispersive Signal Technology system, after the initial touch, a motionless finger cannot be detected. However, for the same reason, the touch recognition is not disrupted by any resting objects.

    3.2.3 Capacitive

    Figure 3.3: Capacitive touch screen

    A capacitive touch screen panel is one which consists of an insulator such as glass, coated with a transparent conductor such as indium tin oxide (ITO).

    3.3 DEVELOPMENT

    Most touch screen technology patents were filed during the 1970s and 1980s and have expired. Touch screen component manufacturing and product design are no longer encumbered by royalties or legalities with regard to patents and the use of touch screen-enabled displays is widespread. The development of multipoint touch screens facilitated the tracking of more than one finger on the screen, thus, operations that require more than one finger are possible. These devices also allow multiple users to interact with the touch screen simultaneously.

  4. FLOW CHART

  5. RESULT, CONCLUSION & FUTURE SCOPE

    1. RESULTS

      1. Application kit with display screen, driver IC, motor, web-camera. Display screen is used to display the image.

        Figure 5.1: Application Board

      2. When image is captured by the web-camera which is connected to Mini 2440 captures image and displays it in the display screen.

        Figure 5.2: Capture the image

      3. When the image is compressed by using compression factor and it display it in the display screen.

        Figure 5.3: compress the image

      4. When the original image is produced by decompression and it display it in the display screen

      Figure 5.4: decompress the image

    2. CONCLUSION

      The project IMAGE COMPRESSION AND DECOMPRESSION has been successfully designed and tested. It has been developed by integrating features of all the hardware components and software used. Presence of every module has been reasoned out and placed carefully thus contributing to the best working of the unit. Secondly, using highly advanced ARM9 board and with the help of growing technology the project has been successfully implemented.

    3. FUTURE SCOPE

In our application we are using jpg compression factor to compress image and display the image and image size on display unit but while compressing the image internally size of image is reduced as size reduces quality of image will also

reduces so to overcome this limitation in future we can use Lossless compression technique.

Lossless compression involves with compressing data which, when decompressed, will be an exact replica of the original data. This is the case when binary data such as executables, documents etc. are compressed. They need to be exactly reproduced when decompressed. On the other hand, images (and music too) need not be reproduced 'exactly'. An approximation of the original image is enough for most purposes, as long as the error between the original and the compressed image is tolerable.

REFERENCES:

[1].An Li and XuemeiXu, The video real-time transmission system based on ARMll. Computer Systems and Applicatins. l9 (l l) l5-18.

[2].Information on http://ftp3.itu. int/av- arch/jvt- site/2003_03_Pattay a/JV1"-G050rl

.zip May 2003.

[3]. EMBEDDED LINUX C LANGUAGE app;ication

programming, huaqingyanjian embedded training center, posts & telecom press, aug,2007.

[4]. Dai li,implemention of usb camera image capturing based on video4linux, unpublished.

[5]. cai shijie, digital compression and coding of continous-tone still images, Nanjing university press, 1995.

[6]. Alan bovik hand image and video processing, publishing house of electronics industry,2006.

[7]. Yu-Lun Huang and Jwu-Sheng Hu, A Teaching Laboratory and Course Programs for Embedded Software Design, iCEER-2005.

[8]. www.arm.com

[9]. Rishi Bhardwaj, Phillip Reames, Russell Greenspan Vijay Srinivas Nori, Ercan Ucan A Choices Hypervisor on the ARM architecture, 2003.

[10]. JPEG Technical Specification, Adobe Developer Support year1992.

[11]. INFORMATION TECHNOLOGY JPEG 2000 IMAGE CODING SYSTEM, JPEG 2000 FINAL COMMITTEE DRAFT VERSION 1.0, 16 MARCH

2000.

[12]. Bart Weuts, Software for ARM Processors and AMBA Methodology-based Systems, Volume 3, Number 4, 2004.

[13]. J,Weinberger and Gadiel Seroussi,Lossless Image compression Algorithm principles and standardization. The loco I into JPEG-LS.

[14]. Kai-Yuan Jan*, Chih-Bin Fan, An-Chao Kuo, Wen-Chi Yen and Youn-Long Lin, A platform based SOC design methodology and its application in image compression, Int. J. Embedded Systems, Vol. 1, Nos. 1/2, 2005 23.

[15]. Dongdong Fu, Yun Q. Shi, Wei Su, A generalized Benfords law for JPEG coefficients and its applications in image forensics, Newark, NJ 07102, USA.

[16]. Bart Weuts, Software for ARM Processors and AMBA Methodology-based Systems, Volume 3, Number 4, 2004.

[17]. Gregory K. Wallace, The JPEG Still Picture Compression Standard, IEEE 1991.

[18]. Gunnar Braun , Achim Nohl, Andreas Weiferink

,Processor/ Memory Co-Exploration on Multiple Abstraction Levels,IEEE 2003. [19].www.cs.vcsd.edu/classes/spo2/cse29/- e/slides/armlect.pdf.

[20]. www.armdesigner.com/KIT6410.html

Leave a Reply