ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

“Ανάπτυξη Android Εφαρµογής για τη δηµιουργία ενεργειακά φιλικών εικόνων -backgrounds για συσκευές κινητού υπολογισµού ”

∆ιπλωµατική Εργασία στα πλαίσια του Μεταπτυχιακού ∆ιπλώµατος Ειδίκευσης

“ΕΠΙΣΤΗΜΗ ΚΑΙ ΤΕΧΝΛΟΛΟΓΙΑ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ” Του

∆ρίτσα Π.Ηλία

Επιβλέπων : Καθηγητής Γαροφαλάκης Ιωάννης

Πάτρα , Μάρτιος 2016

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ -ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

“Ανάπτυξη Android Εφαρµογής για τη δηµιουργία ενεργειακά φιλικών εικόνων -backgrounds για συσκευές κινητού υπολογισµού ”

Μεταπτυχιακή ∆ιπλωµατική Εργασία του ∆ρίτσα Π.Ηλία

Α.Μ. 891

Επιβλέπων : Γαροφαλάκης Ιωάννης

Εγκρίθηκε από την τριµελή εξεταστική επιτροπή τις ……/……/…….

(Υπογραφή ) (Υπογραφή ) (Υπογραφή )

………………………. ...……………………... ..……………………….

Ιωάννης Γαροφαλάκης Γεώργιος Φ.Αλεξίου Σταύρος Κοσµαδάκης Καθηγητής Καθηγητής Καθηγητής Μηχανικών Η/Υ Μηχανικών Η/Υ Μηχανικών Η/Υ & Πληροφορικής & Πληροφορικής & Πληροφορικής

Πάτρα , Μάρτιος 2016

(Signature)

…………………………………………. Hlias P.Dritsas Computer Scientist and Engineer ©2016-All rights reserved

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ -ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

...... Ηλίας Π.∆ρίτσας , Μηχανικός Ηλεκτρονικών Υπολογιστών και Πληροφορικής . Copyright ©2016 - Με την επιφύλαξη παντός δικαιώµατος .

Απαγορεύεται η αντιγραφή , δηµοσίευση και διανοµή της παρούσας εργασίας , εξ ολοκλήρου ή τµήµατος αυτής , για εµπορικό σκοπό . Επιτρέπεται η ανατύπωση , αποθήκευση και διανοµή για σκοπό µη κερδοσκοπικό , εκπαιδευτικής ή ερευνητικής φύσης , υπό την προϋπόθεση να αναφέρεται η πηγή προέλευσης και να διατηρείται το παρόν µήνυµα . Ερωτήµατα που αφορούν τη χρήση της παρούσας εργασίας για κερδοσκοπικό σκοπό πρέπει να απευθύνονται προς το συγγραφέα .Οι απόψεις και τα συµπεράσµατα που περιέχονται σε αυτό το έγγραφο εκφράζουν το συγγραφέα και δεν πρέπει να ερµηνευθεί ότι αντιπροσωπεύουν τις επίσηµες θέσεις του Πανεπιστηµίου Πατρών .

Ευχαριστίες

Ευχαριστίες

Θα ήθελα να εκφράσω τις θερµές µου ευχαριστίες σε όλους όσους συνέβαλαν στην εκπόνηση της συγκεκριµένης διπλωµατικής εργασίας . Πρώτο απ ’όλους θα ήθελα να ευχαριστήσω τον κ.Γαροφαλάκη Ιωάννη για την εµπιστοσύνη που µου έδειξε και για την καλή συνεργασία µας όλο αυτό το χρονικό διάστηµα . Επιπλέον θα ήθελα να ευχαριστήσω τον κ.Σπυράκη Παύλο ο οποίος µε παρότρυνε να απευθυνθώ στον κ. Γαροφαλάκη Ιωάννη και συνέβαλε έµµεσα στην πραγµατοποίηση της συγκεκριµένης εργασίας . Επίσης , θα ήθελα να ευχαριστήσω τον συνεπιβλέποντα της διπλωµατικής εργασίας , Αθανάσιο Νικολακόπουλο , για την παρότρυνση του να ασχοληθώ µε το συγκεκριµένο θέµα καθώς επίσης για την καθοδήγηση και τις χρήσιµες συµβουλές του σε όλη την διάρκεια εκπόνησής της . Ένα ακόµα πρόσωπο το οποίο θέλω να ευχαριστήσω είναι η σύντροφος µου Τρίγκα Μαρία , Ηλεκτρολόγος Μηχανικός εκ Πατρών , για την στήριξη και καίρια συµβολή της στην υλοποίηση της παρούσας εργασίας . Τέλος , θα ήθελα να ευχαριστήσω την οικογένεια µου η οποία µε στήριξε µε τον δικό της τρόπο και µε ενθάρρυνε όλο αυτό το χρόνικο διάστηµα . ∆ρίτσας Π. Ηλίας

Πάτρα , Μάρτιος 2016

7

Περίληψη

Περίληψη

Τα τελευταία χρόνια µε την αλµατώδη τεχνολογική πρόοδο των chips και του λογισµικού , η τεχνολογία των έξυπνων κινητών συσκευών έχει αναπτυχθεί σε τέτοιο βαθµό που το κινητό τηλέφωνο πλέον δεν χρησιµοποιείται µόνο για φωνητική κλήση ή ανταλλαγή γραπτών µηνυµάτων όπως συνέβαινε παλαιότερα . Η δυνατότητα σύνδεσης στο διαδίκτυο , οι πολυµεσικές εφαρµογές και οι υπηρεσίες κοινωνικής δικτύωσης έχουν καταστήσει τα smartphones “αδελφή ψυχή ” εκατοµµύρια χρηστών . Παράλληλα , αποτελέσµατα επαληθεύουν τον προηγούµενο ισχυρισµό και δείχνουν ότι περισσότερο από το 25% των χρηστών θα κατέχουν όχι µία αλλά περίσσοτερες από δύο συσκευές κινητών τηλεφώνων το 2016[2]. Παλαιότερες έρευνες ( Μάιος 2013)[2] έδειξαν ότι το 2015, 788 εκατοµµύρια θα ήταν οι χρήστες κινητ oύ τηλεφώνου µόνο για περιήγηση στο διαδικτύο ενώ η παγκόσµια κίνηση στον ιστό θα αυξάνονταν κατά έναν παράγοντα 26.

Οι πιο συνηθισµένες δραστηριότητες για τους χρήστες τέτοιων έξυπνων συσκευών , που αποτελούν και πηγές κατανάλωσης ενέργειας , αφορούν φωνητική κλήση , ανταλλαγή γραπτών µηνυµάτων (sms ) ή ηλεκτρονικών ( email ), περιήγηση στον παγκόσµιο ιστό , audio/video streaming , χρήση αισθητήρων συσκευής όπως κάµερα , GPS, Wifi, 3G/4G, είτε για ψυχαγωγία είτε για διευκόλυνση της καθηµερινότητας . Άλλες πηγές κατανάλωσης ενέργειας είναι η οθόνη της συσκευής που είναι πολύ σηµαντική διότι οποιαδήποτε λειτουργία απεικονίζεται σε αυτήν , η µνήµη RAM και η κεντρική µονάδα επεξεργασίας ( CPU ).

Οι κινητές συσκευές , ως γνωστόν έχουν ως πηγή ενέργειας την µπαταρία . Η χωρητικότητα της µπαταρίας περιορίζεται αυστηρά από το µέγεθος και το βάρος της συσκευής . Μιλάµε για µοντέρνες συσκευές σε µέγεθος τσέπης µε ικανότητες αντίστοιχες µε ενός προσωπικού υπολογιστή , γνωστές ως “ έξυπνες ” κινητές συσκευές . Η ανάγκη για φορητή επικοινωνία , ψυγαγωγία και υπολογισµό , καθιστά κρίσιµη και απαραίτητη τη βέλτιστη διαχείριση της κατανάλωσης ισχύος αυτών των συσκευών . Η πλούσια λειτουργικότητα τους αυξάνει την πίεση για επιµήκυνση της διάρκειας ζωής της µπαταρίας και την ανάγκη για αποδοτική διαχείριση της ενέργειας .

9

Περίληψη

Για να βελτίωσουµε τη σχετική απόδοση της µπαταρίας ώστε να είναι αποδοτική και αποτελεσµατική η διαχείριση της ενέργειας , απαιτεί να κατανοήσουµε που και πως αυτή χρησιµοποιείται , πόση ενέργεια καταναλώνεται από το σύστηµα , από ποια µέρη και υπό ποιες συνθήκες [5].

Σκοπός αυτής της µεταπτυχιακή διπλωµατικής εργασίας , είναι µια σύντοµη ανασκόπηση της µέχρι τώρα βιβλιογραφίας πάνω στην κατανάλωση ενέργειας σε έξυπνες συσκευές κινητού υπολογισµού , ενώ εστιάζει ιδιαίτερα στην µείωση της ενεργειακής κατανάλωσης που µπορεί να επιτευχθεί µέσω αλγορίθµων επεξεργασίας εικόνας . Χρησιµοποιούµε έναν απλό αλλά αποδοτικό αλγόριθµο γραµµικής απεικόνισης ο οποίος είναι γνωστός ως Concurrent Brightness & Contrast Scaling (CBCS ) [29] . Η βάση του είναι µια υπολογιστικά αποδοτική γραµµική συνάρτηση g=a·f+b, η οποία εφαρµόζεται στην συνιστώσα φωτεινότητας Y στο χρωµατικό σύστηµα YCbCr . Η συνάρτηση αυτή µετασχηµατίζει τις τιµές εικονοστοιχείων φωτεινότητας Y οι οποίες για κατάλληλες τιµές παραµέτρων a, b µειώνουν σηµαντικά την κατανάλωση ισχύος που απαιτείται για την απεικόνιση µιας ψηφιακής έγχρωµης εικόνας χωρίς να υποβαθµίζεται σηµαντικά η ποιότητα της απεικόνισης . Μετά την εφαρµογή της ακολουθεί ισοστάθµιση ιστογράµµατος σε αυτή την συνιστώσα , ανασύνθεση της εικόνας στο YCbCr και επαναφορά της στο RGB χρωµατικό σύστηµα .

Πιο συγκεκριµένα η συνεισφορά µας είναι η µία αυτοτελής εφαρµογή που θα µπορεί κανείς να εγκαταστήσει και να τρέξει σε συσκευές κινητού υπολογισµού µε λειτουργικό Android , µε την εξής λειτουργικότητα . ∆ιαβάζει και αναλύει όλες τις αποθηκευµένες φωτογραφίες του χρήστη και τις " βαθµολογεί " µε βάση την ενεργειακή τους φιλικότητα χρησιµοποιώντας µετρικές εκτίµησης της ενέργειάς τους . Έτσι ο χρήστης θα είναι σε θέση να εκτιµήσει και να διαλέξει πιθανόν ποια φωτογραφία θα χρησιµοποιήσει για wallpaper . Επιπλέον , η εφαρµογή θα δίνει τη δυνατότητα στο χρήστη να επιλέξει µία φωτογραφία και να την τροποποιήσει µε βάση τον παραπάνω αλγόριθµο ο οποίος θα την κάνει περισσότερο ενεργειακά φιλική . Μετά την εφαρµογή του αλγορίθµου θα εµφανίζεται στο χρήστη η τροποποιηµένη εικόνα και έπειτα ο ίδιος αφού δει το τελικό αποτέλεσµα , θα αποδέχεται την τροποποίηση και θα την αποθηκεύει ή θα την απορρίπτει .

Λέξεις Κλειδιά : Εξίσωση Ιστογράµµατος , Χρωµατικό Σύστηµα , Κατανάλωση Ενέργειας , Έξυπνες Κινητές Συσκευές

10

Abstract

Abstract In the past few years with the increasing technological progress of chips and software, the technology of intelligent mobile appliances has been developed “out-of- the-box”, and the mobile telephone henceforth is not used only for voice call or exchange of written messages as it happened in the old days. The possibility of internet connection, the multimedia applications and the services of social networking have rendered smartphones “brother soul” millions of users. Parallel, results verify the previous statement and they show that more than the 25% of users will possess not only one but more than two appliances of mobile telephones up to 2016 [2]. Older researches (May 2013) [2] showed that up to 2015, 788 millions would be the users of mobile phone only for the internet while the world movement in the web would be increased by factor 26.

The most usual activities for the users of such intelligent appliances, that constitute also sources of energy consumption, concern voice call, exchange of written messages (sms) or electronic (email), web-browsing, audio/video streaming, use of mobile device sensors such as camera, GPS, Wifi, 3G/4G, Bluetooth for entertainment or facilitation of everyday routine. Other sources of energy consumption are, the screen of device which is very important because any operation is portrayed in this, RAM memory and central processing unit (CPU).

The mobile appliances, as we know have as source of energy the battery. The capacity of battery is limited strictly by the size and the weight of appliance. We speak for modern appliances to size of pocket with faculties corresponding to a personal computer (desktop or laptop), known as “intelligent” mobile appliances. The need for portable communication, entertainment and calculation, renders critical and essential the optimal management of energy consumption of these appliances. Their rich functionality increases the pressure for elongation of duration of life of battery and the need for efficient management of energy. In order to improve the relative output of battery so that the management of energy is efficient and effective, it requires to comprehend where and how it is used, how much energy is consumed by the system, by which parts and under which conditions [5].

12

Abstract

Aim of this postgraduate diplomatic work, is the short review of bibliography on the energy consumption in smartphones, while it focuses particularly in the reduction of screen energy consumption that can be achieved via image processing algorithms.We use a simple but efficient algorithm of linear mapping which is known as Concurrent Brightness & Contrast Scaling (CBCS) [29]. Its base is a computational efficient linear function g=a ·f+b, which is applied to the component of brightness Y in the chromatic system YCbCr.This function transforms brightness values Y which for suitable values of parameters a,b decrease considerably the energy required for the depiction of digital coloured image without downgrading its quality. Afterwards it follows histogram equalization in this component, recomposition of image in YCbCr and restore in the RGB chromatic system.

More specific our contribution is a self-existent application that someone might install and run in his/her mobile phone with Android, with the following functionality. It reads and analyzes all stored photographs of user and “ranks” them according to their energy friendliness using corresponding metrics of energy estimation. Thus, the user will be able to appreciate and likely choose which picture to use as wallpaper. Finally, the application will give the user the possibility of selecting a picture and modifying it using the suggested algorithm which may make it more energy friendly. Afterwards the application of algorithm, the modified picture will be presented in the user who, according to final result, accepts the modification and stores or rejects it.

Keywords: Histogram Equalization, Chromatic System, Power Consumption, Smartphones

13

Περιεχόµενα Ευχαριστίες ...... 7 Περίληψη ...... 9 Abstract ...... 12 Περιεχόµενα ...... 15 Κατάλογος Εικόνων ...... 17 Κατάλογος Πινάκων ...... 19 Κεφάλαιο 1: Εισαγωγή ...... 21 1.1 Η εξέλιξη των κινητών τηλεφώνων ...... 21 1.2 Πηγές κατανάλωσης ενέργειας έξυπνων κινητών τηλεφώνων ...... 23 1.2.1 Κατανάλωση ενέργειας από την οθόνη του κινητού τηλεφώνου ...... 24 1.2.2 Κατανάλωση ενέργειας από τον browser του κινητού τηλεφώνου ...... 25 1.2.3 Κατανάλωση ενέργειας και ασύρµατες διεπαφές ...... 27 1.2.4 Κατανάλωση ενέργειας KME & Μνήµη ...... 32 1.3 Σενάρια χρήσης και κατανάλωση ενέργειας [3] ...... 34 1.3.1 Αναπαραγωγή ήχου ...... 34 1.3.2 Αναπαραγωγή βίντεο ...... 35 1.3.3 Αποστολή γραπτού µηνύµατος ...... 35 1.3.4 Φωνητική κλήση ...... 35 1.3.5 Αποστολή ηλεκτρονικού µηνύµατος ...... 36 1.3.6 Περιήγηση στον Παγκόσµιο Ιστό ...... 36 1.3.7 Άλλες ενεργοβόρες ενέργειες ...... 36 1.4 Η ιδέα της εργασίας ...... 37 1.5 Οργάνωση κεφαλαίων ...... 37 Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος ...... 39 2.1 Τεχνικές τροποποίησης Ιστογράµµατος ...... 39 2.1.1 Ορισµός ιστογράµµατος και χαρακτηριστικά ...... 39 2.1.2 Γραµµικές και Μη Γραµµικές τεχνικές τροποποίησης ιστογράµµατος ...... 42 2.1.3 Προσαρµοστικές τεχνικές τροποποίησης ιστογράµµατος ...... 43 2.2 Εξίσωση Ιστογράµµατος και χρωµατικά συστήµατα ...... 45 2.3 Το ιστόγραµµα ως εργαλείο παραγωγής ενεργειακά πράσινων εικόνων ...... 46 2.4 Νέα Πρόταση ...... 47 2.4.1 Περιγραφή προτεινόµενης λύσης ...... 47

15

2.4.2 Αλγόριθµος σε βήµατα ...... 48 2.4.3 Μετρικές αξιολόγησης ποιότητας απεικόνισης ...... 49 2.4.4 Μετρικές εκτίµησης ισχύος εικόνας ...... 50 2.4.5 Πειραµατική αξιολόγηση αλγορίθµου σε Matlab ...... 51 Κεφάλαιο 3: Παρουσίαση Android εφαρµογής ...... 61 3.1 Αρχιτεκτονική λειτουργικού συστήµατος Android ...... 61 3.2 Περιγραφή Προτεινόµενης Android Εφαρµογής ...... 63 3.3 Έλεγχος εφαρµογής σε πραγµατική συσκευή ...... 73 Κεφάλαιο 4: Συµπεράσµατα και Μελλοντικές Κατευθύνσεις ...... 78 4.1 Συµπεράσµατα ...... 78 4.2 Μελλοντικές Κατευθύνσεις ...... 79 Παράρτηµα ...... 82 Κώδικας Εφαρµογής ...... 82 Κώδικας Matlab ...... 105 Βιβλιογραφία ...... 111 ∆ικτυακοί τόποι ...... 114

16

Κατάλογος Εικόνων

Κατάλογος Εικόνων Εικόνα 1: Λειτουργικά συστήµατα έξυπνων κινητών συσκευών [4] ...... 22 Εικόνα 2: Κατανάλωση ισχύος ανά συνιστώσα σε κατάσταση αδράνειας [7] ...... 28 Εικόνα 3: ∆ιάγραµµα καταστάσεων CoolSpots[7] ...... 29 Εικόνα 4: Collaborative Downloading Τεχνική [6] ...... 31 Εικόνα 5: Ποσοστιαία χρήση CPU - Κατανάλωση Ισχύος [12] ...... 33 Εικόνα 6: Ποσοστιαία καταναλισκόµενη ενέργεια ανά συνιστώσα [24] ...... 33 Εικόνα 7: Ιστόγραµµα σκοτεινής , φωτεινής και εξισωµένης εικόνας [16] ...... 41 Εικόνα 8: Έγχρωµη εικόνα Lenna ...... 45 Εικόνα 9: Ιστόγραµµα συνιστωσών R, G, B της εικόνας Lenna ...... 46 Εικόνα 10: Block διάγραµµα αλγόριθµου ...... 49 Εικόνα 11: Οπτικά αποτελέσµατα πρότασης για εικόνα 1 και a=1, b= 1:10 ...... 51 Εικόνα 12: Οπτικά αποτελέσµατα πρότασης για εικόνα 1 και a=1, b= 10:10:100 ...... 52 Εικόνα 13: Μετρικές αξιολόγησης ποιότητας εικόνας 1 για a=1, b=10:10:100 ...... 52 Εικόνα 14 : Οπτικά αποτελέσµατα πρότασης για εικόνα 1 και a=0.6, b= 10:10:100 ...... 53 Εικόνα 15: Μετρικές αξιολόγησης ποιότητας εικόνας 1 για a=0.6, b=10:10:100 ...... 54 Εικόνα 16: Μετρικές αξιολόγησης ποιότητας για εικόνα 2 και a=1, b=10:10:100 ...... 54 Εικόνα 17 Οπτικά αποτελέσµατα πρότασης για εικόνα 2 και a=1,b=10:10:100 ...... 55 Εικόνα 18: Μετρικές αξιολόγησης ποιότητας εικόνας 3 για a=1, b=10:10:100 ...... 55 Εικόνα 19: Οπτικά αποτελέσµατα πρότασης για εικόνα 3 και a=1, b=10:10:100 ...... 56 Εικόνα 20: Μετρικές αξιολόγησης ποιότητας εικόνας 4 για a=1, b=10:10:100 ...... 56 Εικόνα 21: Οπτικά αποτελέσµατα πρότασης για εικόνα 4 και a=1, b=10:10:100 ...... 57 Εικόνα 22: Μετρικές αξιολόγησης ποιότητας εικόνας 5 για a=1, b=10:10:100 ...... 57 Εικόνα 23: Οπτικά αποτελέσµατα πρότασης για εικόνα 5 και a=1,b=10:10:100 ...... 58 Εικόνα 24: Αρχιτεκτονική Android[31] ...... 61 Εικόνα 25: Άποψη AVD, Αρχική Οθόνη -Εφαρµογές ...... 64 Εικόνα 26: Άποψη βηµάτων δηµιουργίας project εφαρµογής ...... 65 Εικόνα 27: Άποψη βηµάτων δηµιουργίας project εφαρµογής ...... 66 Εικόνα 28 : Άποψη Layout εφαρµογής ...... 67 Εικόνα 29: Άποψη λειτουργίας µενού ...... 69 Εικόνα 30: Άποψη λίστας εικόνων ...... 70 Εικόνα 31:Layout Αλγόριθµου ...... 71 Εικόνα 32: Λίστα φακέλων επιλογής εικόνας ...... 72 Εικόνα 33: Ποσοστιαία εξέλιξη µπαταρίας σε Android συσκευή Tablet (Kit-Kat 4.4.2) ...... 75

17

Κατάλογος Πινάκων

Κατάλογος Πινάκων Πίνακας 1: Εξοικονόµηση ενέργειας από χρήση JPEG εικόνων ...... 26 Πίνακας 2: Γραµµικές και Μη Γραµµικές Τεχνικές Τροποποίησης Ιστογράµµατος [16] ...... 42 Πίνακας 3: Τεχνικά χαρακτηριστικά ...... 63 Πίνακας 4: Χαρακτηριστικά Συσκευής Πειραµατισµού ...... 76

19

Κεφάλαιο 1: Εισαγωγή

Κεφάλαιο 1: Εισαγωγή

1.1 Η εξέλιξη των κινητών τηλεφώνων

Το πρώτο κινητό ήταν το µοντέλο της Motorola DynaTAC8000X και υπήρξε η ναυαρχίδα των λεγόµενων κινητών πρώτης γενιάς ( 1G). Στην αρχή της δεκαετίας του '90 άρχισε η απογείωση των κινητών τηλεφώνων , µε την ψηφιοποίηση δικτύων (GSM ) και συσκευών . Τα κινητά έγιναν µικρότερα (100-200 γραµµάρια ), χωρούσαν στην παλάµη και έµπαιναν έστω και µε δυσκολία στην τσέπη του χρήστη τους . Περάσαµε έτσι στα κινητά της δεύτερης γενιάς ( 2G), που παρείχαν και άλλες ευκολίες , όπως την αποστολή σύντοµων γραπτών µηνυµάτων ( SMS ) και τη λήψη φωτογραφιών . Στις αρχές του 21 ου αιώνα ήλθαν τα κινητά τρίτης γενιάς ( 3G), µε τις απεριόριστες δυνατότητες των πολυµέσων . Σήµερα , η διείσδυση του κινητού τηλεφώνου στην καθηµερινότητα εκατοµµύρια χρηστών διαφόρων ηλικιών αυξάνεται µε αλµατώδεις ρυθµούς και τα γνωστά σε όλους smartphones είναι πλέον απαραίτητο κοµµάτι της επαγγελµατικής και προσωπικής ζωής των κατόχων του .

Το smartphone ή αλλιώς έξυπνο τηλέφωνο είναι ένα κινητό τηλέφωνο βασισµένο σε ένα λειτουργικό σύστηµα κινητής τηλεφωνίας µε περισσότερο προηγµένη υπολογιστική ικανότητα και συνδεσιµότητα σε σχέση µε ένα συµβατικό κινητό τηλέφωνο . Τα πρώτα smartphones συνδύαζαν τις λειτουργίες ενός προσωπικού ψηφιακού βοηθού ( PDA ) και ενός κινητού τηλεφώνου . Σε µεταγενέστερα µοντέλα προστέθηκαν οι λειτουργίες των

φορητών media players , ψηφιακές φωτογραφικές µηχανές , βιντεοκάµερες τσέπης , καθώς και µονάδες πλοήγησης GPS , µε αποτέλεσµα την διαµόρφωση µιας πολυχρηστικής συσκευής . Πολλά σύγχρονα smartphones περιλαµβάνουν επίσης οθόνες αφής υψηλής ανάλυσης και web browsers που εµφανίζουν τυποποιηµένες ιστοσελίδες , καθώς και βελτιστοποιηµένες ιστοσελίδες για κινητά . Η πρόσβαση σε δεδοµένα υψηλής ταχύτητας παρέχεται µέσω Wifi και µέσω κινητών ευρυζωνικών υπηρεσιών . Τα τελευταία χρόνια , η ταχεία ανάπτυξη στην αγορά των εφαρµογών για κινητά και στο εµπόριο κινητών τηλεφώνων έχει γίνει οδηγός για την ευρεία υιοθέτηση των smartphones .

21

Κεφάλαιο 1: Εισαγωγή

Υπάρχουν διάφορα είδη λειτουργικών συστηµάτων που µπορούν να εγκατασταθούν στις

διάφορες έξυπνες κινητές συσκευές . Συγκεκριµένα είναι το Android της , το iOS της Apple , το Symbia n της , το BlackBerry OS της RIM , το Bada της , τα Windows Phone της . Μερικά άλλα επερχόµενα λειτουργικά συστήµατα είναι το Firefox OS της Mozilla , το Ubuntu Phone της Canonical Ltd's και το Tizen . Συγκεντρωτικά φαίνονται στο ακόλουθο γράφηµα .

Εικόνα 1: Λειτουργικά συστήµατα έξυπνων κινητών συσκευών [4]

Παρατηρούµε ότι το λειτουργικό σύστηµα Android είναι το επικρατέστερο , για αυτό και η εφαρµογή που θα περιγράψουµε θα υλοποιηθεί και εξοιµοιωθεί στο Android Studio 1.3.1 το οποίο εξοιµοιώνει τη λειτουργία µιας έξυπνης κινητής συσκευής για διαφορετικές εκδόσεις του λειτουργικού συστήµατος Android . Οι συσκευές µε Android έχουν περισσότερες πωλήσεις από όλες τις συσκευές Windows , iOS και MacOS X µαζί . Η πρώτη παρουσίαση της πλατφόρµας Android έγινε στις 5 Νοεµβρίου 2007. Το λογότυπο για το λειτουργικό σύστηµα Android είναι ένα ροµπότ σε χρώµα πράσινου µήλου και σχεδιάστηκε από τη γραφίστρια Ιρίνα Μπλόκ .

22

Κεφάλαιο 1: Εισαγωγή

Το Android είναι λειτουργικό σύστηµα για συσκευές κινητής τηλεφωνίας το οποίο τρέχει τον πυρήνα του λειτουργικού Linux . Aναπτύχθηκε πρώτη φορά από την Google και επιτρέπει στους προγραµµατιστές να συνθέτουν κώδικα µε την χρήση της γλώσσας προγραµµατισµού Java , ελέγχοντας την συσκευή µέσω βιβλιοθηκών λογισµικού ανεπτυγµένων από την Google .

Το Android είναι κατά κύριο λόγο σχεδιασµένο για συσκευές µε οθόνη αφής , όπως τα έξυπνα τηλέφωνα και τα τάµπλετ , µε διαφορετικό περιβάλλον χρήσης για τηλεοράσεις ( Android T V), αυτοκίνητα ( Android Auto ) και ρολόγια χειρός ( Android Wear ). Παρόλο που έχει αναπτυχθεί για συσκευές µε οθόνη αφής , έχει χρησιµοποιηθεί σε κονσόλες παιχνιδιών , ψηφιακές φωτογραφικές µηχανές , συνηθισµένους Η/Υ ( π.χ. το HP Slate 21) και σε άλλες ηλεκτρονικές συσκευές .

1.2 Πηγές κατανάλωσης ενέργειας έξυπνων κινητών τηλεφώνων

Η µέτρηση της κατανάλωσης ενέργειας σε µία κινητή συσκευή εξαρτάται από πολλούς παράγοντες , που συνδέονται τόσο µε τα τεχνικά χαρακτηριστικά της συσκευής όσο και µε τις συνθήκες που επικρατούν στο περιβάλλον αλλά και τη συµπεριφορά του κάθε χρήστη ξεχωριστά . Με την ευρεία διάδοση των έξυπνων συσκευών , η κίνηση στην κινητή τηλεφωνία αυξήθηκε εντυπωσιακά . Οι έξυπνες συσκευές έχουν αναδειχθεί πλέον σε πλατφόρµες µε ισχυρές υπολογιστικές ικανότητες . Έχουν γίνει έτσι αναπόσπαστο κοµµάτι της καθηµερινής µας ζωής , και οι άνθρωποι τείνουν να χρησιµοποιούν πλέον τα smartphones και τα tablets για να διεκπεραιώσουν ενέργειες , τις οποίες παλαιότερα έκαναν σε υπολογιστές , τηλεοράσεις και κονσόλες παιχνιδιών .

Όπως φαίνεται στο [2] µέχρι το 2007 οι βελτιώσεις στην σχετική απόδοση δοµών όπως είναι η CPU και ο σκληρός δίσκος HDD , ήταν σηµαντικές και είχαν ανοδική πορεία , σε αντίθεση µε την µπαταρία της οποία η απόδοση είχε υποστεί πολύ λιγότερες βελτιώσεις τα έτη 2000 έως 2005. Το γεγονός αυτό δείχνει , αφενός τη δυσκολία επίλυσης του προβλήµατος εξοικονόµησης ενέργειας , αφετέρου την αυξηµένη ανάγκη εύρεσης πιο αποδοτικών λύσεων προς αυτή την κατεύθυνση . Οι κύριες πηγές κατανάλωσης ενέργειας κάποιες από τις οποίες συνδέονται µε δραστηριότητες των χρηστών τέτοιων έξυπνων συσκευών είναι οι εξής : 1) Βίντεο Κλήση 2) Φωνητική Κλήση 3) Αποστολή /Λήψη µηνυµάτων 4)Περιήγηση στον παγκόσµιο ιστό 5)Audio/Video Streaming 6) Οθόνη 7) Ασύρµατες διεπαφές δικτύου

23

Κεφάλαιο 1: Εισαγωγή

Bluetooth⁄3 G⁄4G⁄Wifi 8)Xρήση αισθητήρων της συσκευής (GPS,Camera) 9) Μνήµη 10) Κ.Μ.Ε .

Στις ενότητες που ακολουθούν θα αναλύσουµε βασικές συνιστώσες µιας έξυπνης κινητής συσκευής και θα δούµε πως αυτές συµβάλλουν στην αύξηση της κατανάλωσης ενέργειας και κατ ’ επέκταση στη µείωση της διάρκειας ζωής της µπαταρίας .

1.2.1 Κατανάλωση ενέργειας από την οθόνη του κινητού τηλεφώνου

Η ενέργεια που καταναλώνεται από την οθόνη µιας κινητής συσκευής εξαρτάται από το επίπεδο φωτεινότητας της οθόνης και το επίπεδο φωτεινότητας των εικονοστοιχείων των εικόνων που απεικονίζονται σε αυτήν . Σύµφωνα µε το [12], η ενεργειακή κατανάλωση της οθόνης έχει εκθετική εξάρτηση από την φωτεινότητα των εικονοστοιχείων της εκάστοτε απεικόνισης , ενώ γραµµική εξάρτηση από το επίπεδο φωτεινότητας της οθόνης . Επιπλέον [3], στις σύγχρονες κινητές συσκευές τα κουµπιά και το πληκτρολόγιο είναι αφής . Όταν αυτά ενεργοποιούνται συνεισφέρουν ένα σταθερό ποσό στην συνολικά καταναλισκόµενη ισχύ ανεξάρτητα από την φωτεινότητα της οθόνης .

Πειραµατικές µετρήσεις στο [12] που διεξάχθηκαν σε µία κινητή συσκευή Nexus1, σύµφωνα µε ελάχιστες 1 και µέγιστες 2 απαιτήσεις , µεταξύ των συνιστωσών δίκτυο , ΚΜΕ , ήχος και οθόνη , η οθόνη και στις δύο περίπτωσεις δαπανά την µεγαλύτερη ενέργεια µεταξύ αυτών . Επιπροσθέτως όπως φαίνεται και στο [3], σηµαντική επίδραση στην κατανάλωση ενέργειας µιας συσκευής κινητού υπολογισµού έχει και η κατάσταση λειτουργίας στην οποία βρίσκεται η συσκευή . Συγκεκριµένα , στην περίπτωση που η κινητή συσκευή βρίσκεται σε κατάσταση αδράνειας ( idle ) και η φωτεινότητα της οθόνης είναι απενεργοποιηµένη ( δηλαδή το backlight απενεργοποιηµένο ) η κατανάλωση ισχύος από την πλευρά της οθόνης είναι σηµαντική και τρίτη σε κατάταξη µετά τα γραφικά και το GSM . Σε αυτή την κατάσταση η συσκευή είναι fully awake αλλά δεν τρέχει κάποια εφαρµογή ενώ το υποσύστηµα της οθόνης είναι σε λειτουργία .

1 Ελάχιστες Απαιτήσεις [12] : KME 0% χρήση , Φωτεινότητα 1% μαύρο χρώμα, Ήχος σε σίγαση, σε αδράνεια 2 Μέγιστες Απαιτήσεις [12] : KME 100% χρήση , Φωτεινότητα 100% λευκό χρώμα ,Ήχος σε μέγιστη ένταση με μικρόφωνα , και λήψη βίντεο υψηλής ποιότητας

24

Κεφάλαιο 1: Εισαγωγή

Τέλος , παρουσιάζεται στο [24] µια πρωτότυπη προσέγγιση στο θέµα της εξοικονόµησης ενέργειας από την πλευρά της οθόνης µιας κινητής συσκευής, ένας ασαφής ελεγκτής ο οποίος λαµβάνει σαν εισόδους τη διάρκεια ζωής της µπαταρίας , την φωτεινότητα του περιβάλλοντος και ρυθµίσεις του χρήστη , και δυναµικά αλλάζει την φωτεινότητα της οθόνης .

1.2.2 Κατανάλωση ενέργειας από τον browser του κινητού τηλεφώνου

Ένα κρίσιµο ερώτηµα που προβληµατίζει τους κατασκευαστές των έξυπνων κινητών συσκευών είναι η ενέργεια που καταναλώνει ο browser της συσκευής ώστε να εγκαταστήσει µια ιστοσελίδα . Συνεπώς , ο έξυπνος σχεδιασµός µιας ιστοσελίδας είναι κρίσιµης σηµασίας , δεδοµένου ότι η περιήγηση στο διαδίκτυο µέσω µιας κινητής συσκευής είναι µία από τις καθηµερινές πολύωρες δραστηριότητες των χρηστών , ενώ επίσης έχει αποδειχθεί πειραµατικά ότι δαπανά σηµαντικό ποσό ενέργειας από την µπαταρία της .

Τρεις είναι οι βασικές ενεργοβόρες συνιστώσες µιας ιστοσελίδας , οι εικόνες , ο κώδικας Java script και ο κώδικας CSS . Στο [2] αποτυπώνονται τα αποτλέσµατα ενός πειράµατος το οποίο έγινε σε µία κινητή συσκευή για 3G συνδεσιµότητα µε σκοπό τη µέτρηση της κατανάλωσης ενέργειας κορυφαίων ιστοσελίδων . Στη υπολογισµό της καταναλισκόµενης ενέργειας περιλαµβάνεται η ενέργεια της 3G επικοινωνίας , και η ενέργεια για το parse & render της ιστοσελίδας . Η µέση κατανάλωση ισχύος όταν ο browser είναι σε κατάσταση αδράνειας εκτιµάται στα 170 mW . Η ιστοσελίδα της Αpple είναι από τις πιο δαπανηρές ενεργειακά ενώ δεύτερη στη σειρά κατατάσσεται η σελίδα του Wikipedia .

Ο κώδικας Java script είναι η συνιστώσα µε το µεγαλύτερο ενεργειακό κόστος µεταξύ των εικόνων της ιστοσελίδας και του CSS . Σχετικές προτάσεις βελτιστοποίησης έχουν προταθεί στο [2] από τον Bohn. Συγκεκριµένα , για το Java script αυτό που προτείνεται είναι συρρίκνωση του κώδικα και χρήση µόνο των συναρτήσεων που χρησιµοποιούνται κατά κόρον από την ιστοσελίδα . Επίσης , σε ότι αφορά τον κώδικα CSS που σχετίζεται µε τα γραφικά της ιστοσελίδας , µεγάλα σε µέγεθος αρχεία CSS δαπανούν ενέργεια περισσότερη από την ελάχιστη απαιτούµενη .

25

Κεφάλαιο 1: Εισαγωγή

Μία προτεινόµενη λύση στο ζήτηµα είναι ο κώδικας CSS να είναι πολύ συγκεκριµένος , σχετικός µε την σελίδα , και να περιέχει µόνο τους κανόνες που έχουν σχέση µε αυτήν . Τέλος , σχετικά µε τις εικόνες τα πιο κοινά χρησιµοποιούµενα πρότυπα είναι τα JPEG, GIF, PNG . Η απαιτούµενη ενέργεια ώστε να γίνει µια εικόνα render κατά την φόρτωση µιας ιστοσελίδας εξαρτάται από την µορφή κωδικοποίησης . Όπως επιβεβαιώνεται στο [2] το JPE G πρότυπο είναι το πιο ενεργειακά αποδοτικό ανεξάρτητα από τα µεγέθη των εικόνων . Έτσι µετατρέποντας τις εικόνες στην µορφή JPEG εξοικονοµούµε ενέργεια . Ο ακόλουθος πίνακας παρουσιάζει την ενέργεια που εξοικονοµείται από µια κινητή συσκευή για την φόρτωση των ιστοσελίδων facebook και αντίστοιχα , όταν αντικατασταθούν οι αρχικές εικόνες µε JPEG . Είναι λοιπόν εµφανή τα ενεργειακά οφέλη από τη χρήση εικόνων JPEG .

Ιστοσελίδα Amazon(Joules) Facebook(Joules) Αρχική εικόνα 2.54 3.43 Νέα εικόνα JPEG 2.04 2.39 Εξοικονόµηση 20% 30% Πίνακας 1: Εξοικονόµηση ενέργειας από χρήση JPEG εικόνων

Επιπροσθέτως , πειραµατικά αποτελέσµατα στο [11] αναγνωρίζουν το JPEG ως τον πιο ενεργειακά αποδοτικό αλγόριθµο και για κωδικοποίηση και για αποκωδικοποίηση εικόνων . Από την πλευρά των φορητών συσκευών , όσον αφορά στο image rendering , η χρήση PNG εικόνων αντί υψηλής ποιότητας JPEG µπορεί να αυξήσει την κατανάλωση ενέργειας µέχρι 66% ή αντίστροφα να µειώσει την διάρκεια ζωής της µπαταρίας κατά 40%. Επίσης , στο [11] αποτυπώνεται η ενέργεια ( κανονικοποιηµένη ) που καταναλώνεται για τις διαδικασίες κωδικοποίησης -αποκωδικοποίησης για τρεις διαφορετικές JPEG εικόνες διαφορετικής ποιότητας , και για µια PNG εικόνα . Η σύγκριση δίνει προβάδισµα στο πρότυπο JPE G και πάλι επιβεβαιώνει τα ενεργειακά του πλεονεκτήµατα . Τέλος , στο [11] βλέπουµε ότι και από χρονικής πολυπλοκότητας το πρότυπο JPE G είναι πιο αποδοτικό .

26

Κεφάλαιο 1: Εισαγωγή

1.2.3 Κατανάλωση ενέργειας και ασύρµατες διεπαφές

Η χρησιµότητα των κινητών συσκευών επηρεάζεται άµεσα από την λειτουργική ζωή τους . Στα smartphones , το σύστηµα ασύρµατης επικοινωνίας είναι υπεύθυνο για ένα µεγάλο κοµµάτι της συνολικής κατανάλωσης ισχύος λόγω της επικοινωνιοκεντρικής χρήσης αυτών των συσκευών . Επιπλέον, αυτές οι πλατφόρµες εξοπλίζονται όλο και περισσότερο µε πολλαπλές ραδιοεπαφές για να διαχειρίζονται µία ποικιλία συνδέσεων , όπως Bluetooth για συνδέσεις personal-area, Wifi για τοπικής περιοχής συνδεσιµότητα και GPRS για ευρείας περιοχής πρόσβαση δεδοµένων . Ανάλογα µε τον τύπο της συνδεσιµότητας που χρησιµοποιεί ο κάθε χρήστης η κατανάλωση ενέργειας και η επίδραση στη διάρκεια ζωής της µπαταρίας είναι διαφορετική . Ακολούθως , θα παρουσιάσουµε µοντέλα έξυπνης διαχείρισης των ασύρµατων διεπαφών µιας κινητής συσκευής τα οποία ήδη έχουν µελετηθεί και δοκιµαστεί σε συσκευές κινητού υπολογισµού µε λειτουργικό σύστηµα Android .

Χρησιµοποιώντας την κατάλληλη ασύρµατη διεπαφή για ένα τρέχον φορτίο εφαρµογής ,και κρατώντας τις άλλες διεπαφές µε αποδοτικό τρόπο απενεργοποιηµένες ,το σύστηµα µπορεί να εξοικονοµήσει ενέργεια . Για παράδειγµα , για εφαρµογές µε χαµηλή χρησιµοποίηση δικτύου µπορεί να χρησιµοποιηθεί µία χαµηλής ισχύος /χαµηλού εύρους ζώνης διεπαφή , και το σύστηµα µπορεί δυναµικά να µετάγεται στην υψηλής ισχύος /υψηλού εύρους ζώνης διεπαφή όταν είναι αναγκαίο . Οι απαιτήσεις εύρους ζώνης ποικίλουν σηµαντικά , εξαρτώµενες από τις εφαρµογές που χρησιµοποιούνται , από συχνά χαµηλού εύρους ζώνης µηνύµατα ελέγχου σε υψηλού εύρους ζώνης video streaming .

Υπάρχουν δύο κυρίαρχα πρότυπα συχνά ενσωµατωµένα στις κινητές συσκευές : Wifi και Bluetooth. Το Wifi ή IEEE802.11 a/b/g πρότυπο προσφέρει υψηλού εύρους ζώνης καλυπτότητα µέχρι 100 µέτρα . Το Bluetooth είναι µια τεχνολογία αντικατάστασης του καλωδίου , εµβέλειας µέχρι 10 µέτρα και εστιάζει σε χαµηλής ισχύος κατανάλωση για κινητές συσκευές . Οι σύγχρονες συσκευές κατέχουν και από τις δύο τεχνολογίες , επιτρέποντας στους χρήστες να έχουν διεπαφή µε µια µεγάλη ποικιλία ασύρµατων δικτύων και συσκευών . Για µικρές συσκευές µε περιορισµένη ισχύ , η κατανάλωση ισχύος ενός Wifi αλλά και συνολικά των ασύρµατων διεπαφών αντιπροσωπεύει µια σηµαντική µερίδα της συνολικής ισχύος του συστήµατος , ακόµα και σε αδράνεια όπως αποδεικνύει και το ακόλουθο γράφηµα .

27

Κεφάλαιο 1: Εισαγωγή

Εικόνα 2: Κατανάλωση ισχύος ανά συνιστώσα σε κατάσταση αδράνειας [7]

Οι δύο τεχνολογίες έχουν διαφορετικές ισχείς µετάδοσης για να υποστηρίζουν επικοινωνία στις αντίστοιχες αποστάσεις . Οι ακτίνες µετάδοσης καθορίζουν το πως και που ένας χρήστης µπορεί να λειτουργήσει τις ασύρµατες συσκευές του . Η απόσταση ανάµεσα στα σηµεία επικοινωνίας επηρεάζει την απόδοση µιας δεδοµένης τεχνολογίας ως προς το throughput , λόγω της απαίτησης για εύρος ζώνης , και έχει ως αποτέλεσµα υψηλότερες καθυστερήσεις λόγω του αυξηµένου θορύβου καναλιού οδηγώντας σε περισσότερες επαναµεταδόσεις για αξιόπιστη επικοινωνία . Και οι δύο αυτές επιδράσεις συνεισφέρουν σε υψηλότερη κατανάλωση ισχύος στα Wifi δίκτυα , συγκριτικά µε τα Bluetooth δίκτυα τα οποία εξυπηρετούν σχετικά µικρότερες περιοχές .

Είναι αξιοσηµείωτο στο [8] ότι µεταξύ των ασύρµατων διεπαφών Wifi , Bluetooth σε κατάσταση “Full”, το Wifi είναι µια από τις πιο ενεργοβόρες συνιστώσες που έχουν σηµαντική επίδραση στην αυτονοµία της συσκευής . Αυτό έρχεται να ενισχύσει και η αυξηµένη κατανάλωση ισχύος από την πλευρά της CPU που απαιτείται για τη χρήση αυτών των διεπαφών . Στην περίπτωση του Wifi, υπάρχει κατανάλωση ενέργειας ακόµα και σε κατάσταση αδράνειας .

28

Κεφάλαιο 1: Εισαγωγή

Στο [7] το σύστηµα CoolSpots δίνει τη δυνατότητα σε µια ασύρµατη κινητή συσκευή να µετάγεται αυτόµατα µεταξύ πολλαπλών ραδιοδιεπαφών , όπως Wifi και Bluetooth, µε σκοπό να αυξηθεί η διάρκεια ζωής της µπαταρίας ενώ ακόµα διατηρείται επαρκές εύρος ζώνης για να υποστηρίζει ενεργές εφαρµογές . Πυρήνας του CoolSpots µοντέλου , εκτός από την αρχιτεκτονική µεταγωγής , είναι οι πολιτικές που καθορίζουν πότε να µετάγονται µεταξύ ποικίλων ραδιοτεχνολογιών . Υπάρχουν δύο αποφάσεις που πρέπει να ληφθούν : πότε να µεταγούν στο Wifi για να αυξήσουν το διαθέσιµο εύρος ζώνης , και πότε µπορούν να µεταγούν στο Bluetooth και να απενεργοποιήσουν το Wifi για εξοικονόµηση ενέργειας .

Το κύριο µειονέκτηµα της µεταγωγής είναι η καθυστέρηση και το ενεργειακό φορτίο (απ )ενεργοποίησης της διεπαφής του Wifi , οδηγώντας στην σπατάλη ενέργειας . Μετρήσεις [7] στο σύστηµα CoolSpots δείχνουν µείωση περισσότερο από 50% στην κατανάλωση ενέργειας του ασύρµατου υποσυστήµατος , το οποίο µπορεί αποδοτικά να διπλασιάσει την διάρκεια ζωής της µπαταρίας εξαρτώµενη φυσικά από την συνολική συµπεριφορά του συστήµατος .

Το υποσύστηµα επικοινωνίας του CoolSpots µπορεί να υποστηρίζει χαµηλού εύρους ζώνης δραστηριότητα µέσω Bluetooth µόνο , και όταν απαιτείται µετάγεται στο Wifi για υψηλού εύρους ζώνης επικοινωνία . Για εξοικονόµηση ισχύος σε κατάσταση αδράνειας το Wifi µπορεί να απενεργοποιείται όταν δεν χρησιµοποιείται .Το CoolSpots χρησιµοποιεί ένα υβριδικό σύστηµα Wifi/BT το οποίο υλοποιεί πολλαπλών ραδιοδιεπαφών διαχείριση ισχύος που εκµεταλλεύεται άµεσα την ποικιλοµορφία ανάµεσα σε διαφορετικές ραδιοτεχνολογίες .

Εικόνα 3: ∆ιάγραµµα καταστάσεων CoolSpots[7]

29

Κεφάλαιο 1: Εισαγωγή

Το Bluetooth πρότυπο ορίζει αρκετές καταστάσεις εξοικονόµησης ενέργειας , η πιο εφαρµόσιµη από αυτές είναι η κατάσταση sniff όπου ένα συνδεδεµένο BT πέφτει σε κατάσταση sleep µε ένα καθορισµένο “duty cycle” και ενεργοποιείται αυτόµατα όταν υπάρχει οποιαδήποτε ασύρµατη δραστηριότητα δεδοµένων . Αυτή η κατάσταση είναι πιθανό να µειώσει την κατανάλωση ισχύος του Bluetooth σε πολύ χαµηλά επίπεδα µε idle σύνδεση , ενώ είναι ακόµα δυνατή η γρήγορη µετάβαση σε πλήρη επικοινωνία . Επίσης , το Bluetooth έχει µια ακόµα δυνατή κατάσταση εξοικονόµησης ενέργειας την deep sleep .

Το Wifi χρησιµοποιεί µια παρόµοια κατάσταση εξοικονόµησης ενέργειας ( Power Save Mode ) όπου υπάρχει ένας κύκλος εναλλαγής µεταξύ καταστάσεων sleep και active για να µειώσει την κατανάλωση ισχύος . Η εξοικονόµηση ενέργειας του Wifi περιορίζεται από την ισχύ που καταναλώνεται στην κατάσταση PSM (256mW ) συγκρινόµενο µε το Bluetooth στην κατάσταση sniff (25mW). Αυτό είναι το σηµείο όπου η Bluetooth Sniff κατάσταση µπορεί να παρέχει ουσιαστική εξοικονόµηση ενέργειας .

Ένα παρόµοιο σύστηµα µε το “CoolSpots” είναι το “Cell2Notify” [6] το οποίο χρησιµοποιεί µία GSM διεπαφή για να “ αφυπνήσει ” την διεπαφή Wifi όταν προκύπτουν VoIP κλήσεις µε σκοπό να επιτύχουν καλύτερη εξυπηρέτηση και να µειώσουν την κατανάλωση ενέργειας . Επιπλέον , γνωρίζουµε ότι οι διαφορετικές τεχνολογίες επικοινωνίας όπως Wifi,3G, Bluetooth έχουν διαφορετικό throughput µεταφοράς δεδοµένων και καταναλώνουν διαφορετικά ποσά ενέργειας . Συνδυάζοντας τις τεχνολογίες αυτές , η κατανάλωση ενέργειας µπορεί να µειωθεί . Στο [6] παρουσιάζεται µια συνεργατική τεχνική η οποία ονοµάζεται “Collaborative Downloading”. Σκοπός της τεχνικής είναι να αυξήσει την ενεργειακή αποδοτικότητα της κινητής συσκευής .

Αυτό αποτελεί µέγιστης σηµασίας για τους χρήστες διότι οι περιορισµένες πηγές ενέργειας εµποδίζουν τη συχνή χρήση προηγµένων υπηρεσιών σε συνδυασµό µε την πράσινη επικοινωνία . Πρόκειται για ένα κατανεµηµένο µοντέλο όπου οι χρήστες µοιράζονται ένα κοινό ενδιαφέρον στο περιεχόµενο µιας υπηρεσίας . Το µοντέλο βασίζεται στην ιδέα ότι οι χρήστες ατοµικά αποκτούν κοµµάτια µιας υπηρεσίας από έναν κεντρικό εξυπηρετητή µέσω 3G επικοινωνίας και στη συνέχεια ανταλλάσσουν αυτά τα κοµµάτια µεταξύ τους µέσω ενός bluetooth ή wifi adhoc δίκτυου .

30

Κεφάλαιο 1: Εισαγωγή

Εικόνα 4: Collaborative Downloading Τεχνική [6]

Μέσα από πειραµατικές µετρήσεις προκύπτει ένα γραµµικό µοντέλο κατανάλωσης ενέργειας για κάθε τεχνολογία επικοινωνίας για το ανέβασµα και κατέβασµα δεδοµένων αντίστοιχα . Οι µετρήσεις αφορούν την ποσοστιαία µείωση της ενέργεια της µπαταρίας ως προς τον

παρελθόντα χρόνο σε ώρες και ως προς το µέγεθος των δεδοµένων σε αντίστοιχα . Η συγκεκριµένη τεχνική εφαρµόστηκε σε συσκευή µε λειτουργικό Android .

Επιπλέον , σύµφωνα µε το [1] σε µια απόπειρα να µειωθεί η κατανάλωση ενέργειας ενός smartphone και να επεκταθεί η διάρκεια ζωής της µπαταρίας σχεδιάστηκε ένα σύστηµα το οποίο καλείται PhoneJoule . Βασικά χαρακτηριστικά του συστήµατος είναι τα εξής . Πρώτον , µέσω του διαχειριστή οθόνης το σύστηµα απεικονίζει τις αναγκαίες πληροφορίες ενός smartphone , όπως κατάσταση µπαταρίας , χρησιµοποίηση CPU , εφαρµογές που τρέχουν , ρυθµούς δεδοµένων χρήστη και διαθέσιµους αισθητήρες της συσκευής . ∆εύτερον , βοηθά τους χρήστες να µετάγονται “ έξυπνα ” ανάµεσα στα Wifi και GPRS ασύρµατα δίκτυα µέσω ενός προσαρµοστικού µεταγωγέα . Τρίτον , οι χρήστες µπορούν να κάνουν kill εφαρµογές που δεν είναι αναγκαίες και καταναλώνουν ισχύ σύµφωνα µε τα πρότυπα συµπεριφοράς τους . Τέταρτον , παρέχει δυνατότητα επιλογής κατάστασης εξοικονόµησης ενέργειας σύµφωνα µε το προφίλ συµπεριφοράς του χρήστη : Custom, Intelligent, Superstandby, Normal, Silent,

31

Κεφάλαιο 1: Εισαγωγή

Vibrate . Επίσης , επειδή η χρήση των αισθητήρων της συσκευής οδηγεί σε µεγάλη κατανάλωση ισχύος , ειδικά το GPS , εµφανίζει µία λίστα µε τους διαθέσιµους αισθητήρες και ο χρήστης µπορεί να ενεργοποιεί ή να απενεργοποιεί αισθητήρες . Τελικός και πρωταρχικός στόχος του συστήµατος είναι η µείωση της κατανάλωσης ενέργειας και η παράταση της διάρκειας ζωής της µπαταρίας .

Τέλος , στο [6] αναφέρεται ότι το 2011 ο Friedman έκανε µια πειραµατική µελέτη πάνω σε διαφορετικές πλατφόρµες ( Samsung Galaxy µε λειτουργικό Android 1.5 και Samsung Spica µε λειτουργικό Android 2.1 ) όπου µέτρησε την ισχύ και την απόδοση της χρήσης των διεπαφών Wifi και Bluetooth σε κάποιες έξυπνες κινητές συσκευές . Το συµπέρασµα που προέκυψε ήταν ότι η κατανάλωση ισχύος για το Wifi είναι γενικά γραµµική ως προς το αποκτηθέν throughput , ενώ η κατανάλωση ισχύος για την αποστολή και λήψη δεδοµένων χρησιµοποιώντας Bluetooth είναι χαµηλότερη από τη χρήση Wifi αλλά µόνο περίπου στο ήµισυ .

Στην βιβλιογραφία παρουσιάζονται πολλά ακόµα συστήµατα στην κατεύθυνση των παραπάνω . Οι λύσεις που παρουσιάζονται εδώ αποτελούν ενδεικτικά παραδείγµατα απόπειρας διαχείρισης των ασύρµατων διεπαφών µιας κινητής συσκευής µε σκοπό την βέλτιστη διαχείρισή τους για την εξοικονόµηση ενέργειας της συσκευής

1.2.4 Κατανάλωση ενέργειας KME & Μνήµη

Η διαχείριση της κατανάλωσης ενέργειας της Κ.Μ.Ε δεν επιδέχεται και πολλές παρεµβάσεις από πλευράς λογισµικού . Η Κ.Μ.Ε µπορεί να εξοικονοµήσει ενέργεια όσο λιγότερες εφαρµογές τρέχουν στην συσκευή (βλ . Πίνακα 1 [23]) αλλά αυτό δεν θεωρείται σχεδιαστική λύση την οποία µπορούν να διαχειριστούν οι κατασκευαστές σε επίπεδο λογισµικού .

32

Κεφάλαιο 1: Εισαγωγή

Εικόνα 5: Ποσοστιαία χρήση CPU - Κατανάλωση Ισχύος [12]

Από την άλλη , η εξοικονόµηση ενέργειας εξαρτάται και από τις προτιµήσεις του χρήστη . Βλέπουµε την εκθετική εξάρτηση της κατανάλωσης ενέργειας µιας κινητής συσκευής ως προς την ποσοστιαία χρήση της ΚΜΕ . Όπως αποτυπώνεται στο επόµενο γράφηµα η ενέργεια από την KME µπορεί να είναι µόνο το 14% της συνολικά καταναλισκόµενης ισχύος αλλά είναι η δεύτερη σε σειρά συνιστώσα της συσκευής , µετά το GSM , που συµβάλλει στην µείωση της διάρκεια ζωής της µπαταρίας .

Εικόνα 6: Ποσοστιαία καταναλισκόµενη ενέργεια ανά συνιστώσα [24]

33

Κεφάλαιο 1: Εισαγωγή

Η µνήµη περιλαµβάνει συνιστώσες όπως RAM και SDCard οι οποίες αν δεν γίνει ανάγνωση /εγγραφή αρχείου ή αν δεν γίνει video streaming καταναλώνουν πολύ λίγη ενέργεια [24]. Ο Perruci στο [9] µέτρησε την κατανάλωση ενέργειας για την αποθήκευση ενός αρχείου 1MB σε διαφορετικούς drivers µιας κινητής συσκευής , D: προσωρινός δίσκος E: κάρτα µνήµης C: µνήµη κινητού ( flash memory ), και συµπέρανε πειραµατικά πιο ενεργειακά οικονοµική τη χρήση του οδηγού D. Στο [3] πειραµατικά διαπιστώθηκε ότι η

ανάγνωση /εγγραφή στην εξωτερική SDCard κοστίζει ενεργειακά πολύ περισσότερο σε σχέση µε την αντίστοιχες ενέργειες στην εσωτερική µνήµη της κινητής συσεκυής ( flash memory ).

Τέλος , στο [3] βλέπουµε ότι η κατανάλωση ενέργειας από την πλευρά των CPU και RAM επηρεάζεται από το benchmark (gzip,equake κ.α.) που τρέχει αλλά και από την συχνότητα λειτουργίας . Μάλιστα όσο αυξάνει η συχνότητα τόσο µεγαλύτερο ποσό ενέργειας δαπανούν και οι δύο αυτές συνιστώσες , όπου µεταξύ αυτών η CPU καταναλώνει την περισσότερη µε σηµαντική διαφορά από τη µνήµη RAM .

1.3 Σενάρια χρήσης και κατανάλωση ενέργειας [3]

Στην ενότητα αυτή θα παρουσιάσουµε κάποια σενάρια χρήσης της κινητής συσκευής ώστε να κατανοήσουµε σε κάθε περίπτωση τις συνιστώσες που απαιτούνται καθώς και την ενέργεια που καταναλώνεται .

1.3.1 Αναπαραγωγή ήχου

Το backlight της οθόνης είναι απενεργοποιηµένο (αυτό είναι αντιπροσωπευτικό της περίπτωσης που κάποιος ακούει µουσική και το κινητό βρίσκεται στην τσέπη του ) και η ισχύς του GSM δικτύου λαµβάνεται υπόψιν διότι το τηλέφωνο θα πρέπει να είναι διαθέσιµο να δεχτεί µηνύµατα ή φωνητικές κλήσεις . Το ενεργειακό κόστος φόρτωσης ενός αρχείου ήχου που βρίσκεται αποθηκευµένο στην SDCard της συσκευής , είναι αµελητέο ως προς τη συνολική κατανάλωση ισχύος . Σε κάθε επανάληψη των µετρήσεων γίνεται καθαρισµός της cache ώστε να είναι βέβαιο ότι γίνεται εκ νέου φόρτωση του αρχείου ήχου .

34

Κεφάλαιο 1: Εισαγωγή

1.3.2 Αναπαραγωγή βίντεο

Αντίστοιχα για την αναπαραγωγή βίντεο η ισχύς του backlight της οθόνης και του GSM δικτύου λαµβάνεται υπόψιν (ισχύει ότι και στην προηγούµενη περίπτωση ). Το επίπεδο φωτεινότητας της οθόνης ρυθµίζεται αντίστοιχα στο 0% , 33% , 67% και 100% στην Android συσκευή .Το αρχείο βίντεο που δοκιµάστηκε διαρκεί 5min , είναι 12.3MB H.263- encoded videoclip (χωρίς ήχο ) και παίζει µαζί µε την εφαρµογή κάµερα της Android συσκευής . Όπως φαίνεται και στο [3] η CPU καταναλώνει την περισσότερη ισχύ απ ’ ότι η οθόνη . Η οθόνη κατ ’ ελάχιστο καταναλώνει το 38% της συνολικής ισχύος , µέχρι 68% της συνολικής καταναλισκόµενης ισχύος για µέγιστη φωτεινότητα οθόνης .Το ενεργειακό κόστος φόρτωσης ενός βίντεο από την SDCard θεωρείται αµελητέο . Και εδώ γίνεται καθαρισµός της cache για να είναι σίγουρο ότι σε κάθε επανάληψη θα γίνεται εκ νέου φόρτωση του βίντεο . Από την άλλη [12], αν δεν πρόκειται για αναπαραγωγή βίντεο που είναι αποθηκευµένο στην SDCard της συσκευής αλλά για video streaming η επίδραση στην κατανάλωση ενέργειας της συσκευής είναι πολύ σηµαντική . Υποβάθµιση της ανάλυσης οθόνης ή του ρυθµού frames per second µειώνει την κατανάλωση ισχύος της συσκευής . Τέλος , ρόλο στην καταναλισκόµενη ισχύ παίζουν ο ρυθµός bit (δίκτυο ) και η ποιότητα της κωδικοποίησης .

1.3.3 Αποστολή γραπτού µηνύµατος

Η αποστολή ενός γραπτού µηνύµατος απαιτεί φόρτωση των επαφών της συσκευής , επιλογή επαφής , γράψιµο και αποστολή του µηνύµατος , και επιστροφή στην αρχική οθόνη . Όλα αυτά τα βήµατα έχουν ένα ενεργειακό κόστος το οποίο για κάθε συνιστώσα της συσκευής αποτυπώνεται στο [3]. Επίσης , ρόλο στην κατανάλωση ενέργειας παίζει η διεπαφή δικτύου αλλά και το µήκος του κειµένου . Στο [23] µέσα από πειράµατα φαίνεται ότι η ενέργεια που δαπανάται για την αποστολή γραπτού µηνύµατος για διαφορετικούς τύπους συνδεσιµότητας αύξανει γραµµικά µε το µήκος του κειµένου .

1.3.4 Φωνητική κλήση

Για την πραγµατοποίηση µιας GSM φωνητικής κλήσης απαιτείται φόρτωση της εφαρµογής κλήσης , επιλογή από τη λίστα επαφών και κλήση του αριθµού . Σηµεία που λαµβάνονται υπόψιν στην εκτίµηση της κατανάλωσης ενέργειας είναι η χρονική διάρκεια της κλήσης , ο χρόνος αποδοχής κλήσης και ο χρόνος σύνδεσης . Το Android απενεργοποιεί το backlight

35

Κεφάλαιο 1: Εισαγωγή

κατά τη διάρκεια της κλήσης . Πιο ενεργοβόρος ωστόσο , όπως είναι αναµενόµενο , είναι η βίντεο κλήση όπως φαίνεται και στο [22].

1.3.5 Αποστολή ηλεκτρονικού µηνύµατος

Το ενεργειακό κόστος αφορά , το άνοιγµα της εφαρµογής email , την αποστολή και λήψη emails , κατέβασµα και διάβασµα emails , και απάντηση σε κάποια από αυτά . Μπορεί επίσης κάποιο από αυτά να περιλαµβάνει αρχείο κειµένου , ήχου ή εικόνας ή συνδυασµό των παραπάνω . Οι παραπάνω ενέργειες απαιτούν χρήση των διεπαφών δικτύου Wifi ή GPRS , της CPU , της οθόνης ( για 0%, 33%, 67% και 100% του slider ρυθµίσης της φωτεινότητας της Αndroid συσκευής ), του GSM δικτύου δεδοµένου ότι η συσκευή µπορεί να δέχεται κλήσεις ή µηνύµατα µε ότι ενεργειακό κόστος αυτό συνεπάγεται .

1.3.6 Περιήγηση στον Παγκόσµιο Ιστό

Στην παραπάνω ενότητα επικεντρωθήκαµε και αναλύσαµε τις συνιστώσες µιας ιστοσελίδας που συµβάλλουν στην δαπάνη ενέργειας . Για τη φόρτωση µιας ιστοσελίδας “δουλεύουν ” και συνεργάζονται πολλές συνιστώσες της κινητής συσκευής ( όπως CPU , οθόνη , ασύρµατες διεπαφές ) οι οποίες δαπανούν ισχύ για την επίτευξη του σκοπού ( φόρτωση σελίδας ). Πειράµατα για Wifi και GPRS συνδεσιµότητα , λαµβάνοντας υπόψιν την ισχύ που καταναλώνει η οθόνη για 4 διαφορετικά επίπεδα φωτεινότητας δείχνουν ότι το GPRS καταναλώνει µεγαλύτερη ισχύ σε σχέση µε το Wifi . Σε κάθε επανάληψη των µετρήσεων γίνεται καθαρισµός της cache του browser . Τα πειραµατικά αποτελέσµατα αφορούσαν τη σελίδα του BBC news . Η φόρτωση µιας ιστοσελίδας απαιτεί εκτός των άλλων άνοιγµα της εφαρµογής browser , επιλογή και φόρτωση σελίδας .

1.3.7 Άλλες ενεργοβόρες ενέργειες

Google map: εφαρµογή web mapping που χρησιµοποιεί CPU , οθόνη , Wifi , 3G ή GPS . Google talk: εφαρµογή instant message που χρησιµοποιεί CPU , οθόνη και ήχο . YouTube: µια web-based video sharing εφαρµογή που χρησιµοποιεί CPU , οθόνη , Wifi, 3G. Ειδοποιήσεις : Μειώνοντας τη συχνότητα ειδοποιήσεων που αφορούν κυρίως τις σελίδες κοινωνικής δικτύωσης π.χ. Facebook , Twitter ή Email θα µειώσουµε τη χρήση συνιστωσών

36

Κεφάλαιο 1: Εισαγωγή

της έξυπνης κινητής συσκευής και θα αυξήσουµε την ενεργειακή αποδοτικότητα της .

1.4 Η ιδέα της εργασίας

Η παρούσα εργασία βασίστηκε σε ένα πείραµα το οποίο παρουσιάζεται στο [3] και διεξάχθηκε σε µία κινητή συσκευή στα πλαίσια γενικότερης µελέτης σχετικά µε την ενέργεια που καταναλώνουν οι συνιστώσες µιας κινητής συσκευής . ∆ιαπιστώθηκε ότι σηµαντική επίδραση στην κατανάλωση ισχύος έχει και το περιεχόµενο που αποτυπώνεται στην οθόνη της συσκευής . Μετρήσεις στο [3] έδειξαν ότι , σε µία λευκή ( επίπεδο φωτεινότητας οθόνης στο µέγιστο ) και µία µαύρη οθόνη ( επίπεδο φωτεινότητας οθόνης στο µηδέν ) αντίστοιχα , το περιεχόµενο που αυτή απεικονίζε επηρέασε την κατανάλωση ισχύος αυτής γύρω στα 33 mW και 74 mW αντίστοιχα . Άρα , οι τιµές των εικονοστοιχείων των εικόνων που χρησιµοποιεί ο χρήστης ως background στην συσκευή του , ακόµα και µε την φωτεινότητα της οθόνης να είναι στο ελάχιστο επίπεδο , παιζούν σηµαντικό ρόλο στην ενέργεια που καταναλώνει η οθόνη και συνεπώς στη συνολική ενέργεια που δαπανά η συσκευή . Αυτό ακριβώς είναι και το θέµα που θα µας απασχολήσει στο επόµενο κεφάλαιο , δηλαδή η επεξεργασία εικόνων , υποψήφια wallpapers µε σκοπό την µείωση της ενέργειας που απαιτείται για την απεικόνισή τους .

1.5 Οργάνωση κεφαλαίων

Συµπερασµατικά , πολλές είναι οι εφαρµογές και οι δοµές µιας συσκευής κινητού τηλεφώνου οι οποίες καταναλώνουν σηµαντικα ποσά ενέργειας κατά την λειτουργία τους , κάτω από ποικίλες και διαφορετικές καταστάσεις λειτουργίας της κινητής συσκευής . Μετά το εισαγωγικό πρώτο κεφάλαιο µε την όσο το δυνατόν περιεκτική ανασκόπηση στις πηγές κατανάλωσης ενέργειας θα ασχοληθούµε , στα κεφάλαια που έπονται , µε την συνεισφορά της εργασίας . Συγκεκριµένα στο δεύτερο κεφάλαιο θα κάνουµε µία σύντοµη αναφορά σε τεχνικές επεξεργασίας εικόνας µε χρήση ιστογράµµατος και θα παρουσιάσουµε αναλυτικά την δική µας πρόταση στο πρόβληµα της εξοικονόµησης µε σχετικά πειράµατα που έγιναν σε περιβάλλον Matlab πριν την υλοποίηση της ιδέας ως εφαρµογή για συσκευές µε λειτουργικό Android . Στο τρίτο κεφάλαιο θα γίνει µία µικρή εισαγωγή στο λειτουργικό σύστηµα Android και µία όσο το δυνατόν αναλυτική παρουσίαση του πως δοµήθηκε και λειτουργεί η συνεισφοράς της παρούσας εργασίας , η οποία ουσιαστικά υλοποιεί την ιδέα του κεφαλαίου 2. Στο τέταρτο και τελευταίο κεφάλαιο παρουσιάζονται σχόλια σχετικά µε επιλογές που

37

Κεφάλαιο 1: Εισαγωγή

κάναµε κατά την δόµηση της πρότασης µας , συµπεράσµατα για την ενεργειακή της απόδοση και ανοιχτά ζητήµατα σχετικά µε την εφαρµογή και επέκτασή της σε επεξεργασία βίντεο .

38

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

Στην τρέχουσα γενιά κινητών τηλεφώνων ,τρεις είναι οι κύριες πηγές κατανάλωσης ενέργειας , Κεντρική Μονάδα Επεξεργασίας ( Κ.Μ.Ε), Οθόνη και διεπαφές δικτύου . Λόγω του περιορισµένου µεγέθους και της χωρητικότητας των µπαταριών , η αποδοτική και αποτελεσµατική χρήση της ενέργειας είναι κρίσιµη για την λειτουργικότητα και χρηστικότητα της κινητής συσκευής. ∆εδοµένου ότι η οθόνη δαπάνα αρκετή από την συνολική ενέργεια του κινητού τηλεφώνου , είναι επιθυµητό να αναπτύξουµε έναν αλγόριθµο επεξεργασίας εικόνας , που είναι ικανός να εξοικονοµεί ενέργεια στο πάνελ απεικόνισης (οθόνη ).

Έρευνες πάνω στην εξοικονόµηση ενέργειας στις οθόνες έχουν διεξαχθεί ανεξάρτητα από τη βελτίωση αντιθέσεων και φωτεινότητας . Εδώ παρουσιάζουµε έναν υπολογιστικά απλό αλγόριθµο ο οποίος εφαρµοζεί ένα γραµµικό µετασχηµατισµό των εικονοστοιχείων της εικόνας εισόδου ο οποίος επηρεάζει ταυτόχρονα τις αντιθέσεις και την φωτεινότητα της εικόνας έτσι ώστε η νέα , προκύπτουσα εικόνα να δαπανά λιγότερη ενέργεια κατά την απεικόνιση της ενώ η επεξεργασία να µην υποβαθµίζει την ποιότητά της .

2.1 Τεχνικές τροποποίησης Ιστογράµµατος

2.1.1 Ορισµός ιστογράµµατος και χαρακτηριστικά

Γενικά , το ιστόγραµµα είναι ένα γράφηµα που δείχνει την κατανοµή των δεδοµένων . Στην επεξεργασία εικόνας το ιστόγραµµα χρησιµοποιείται για να δείξει την κατανοµή των τιµών των εικονοστοιχείων σε µια εικόνα . Επιπλέον , το ιστόγραµµα είναι µια τεχνική η οποία µπορεί να περιγράψει και να αποδείξει τις αντιθέσεις µιας εικόνας [13] αλλά και να επιτυχεί βελτίωση των αντιθέσεων µέσω τεχνικών τροποποίησης ιστογράµµατος . Η τεχνική εξίσωσης ιστογράµµατος µπορεί να επιτύχει εξοµάλυνση των αντιθέσεων σε µια εικόνα . Το ιστόγραµµα µίας ψηφιακής εικόνας µε επίπεδα του γκρι στο διάστηµα [0,L-1] είναι µία διακριτή συνάρτηση που εκφράζει το πλήθος των εικονοστοιχείων της εικόνας σε κάθε επίπεδο του γκρι .

39

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

Συνήθως , κανονικοποιούµε το ιστόγραµµα διαιρώντας κάθε τιµή µε τον συνολικό αριθµό

των εικονοστοιχείων της εικόνας , έστω . Τότε , το κανονικοποιηµένο ιστόγραµµα δίνεται από την συνάρτηση , για k = 0,1,....,L-1 επίπεδα του γκρι , όπου L = 2 b (b = 8 bits ), = και θα µπορούσαµε να πούµε ότι δίνει µία προσέγγιση της πιθανότητας εµφάνισης κάθε επιπέδου του γκρι .

Τo ιστόγραµµα µπορεί να φανεί χρήσιµο γιατί µας βοηθά να εξάγουµε συµπεράσµατα για τη µορφή µιας εικόνας . Για παράδειγµα :

° Σε µία σκοτεινή εικόνα οι τιµές του γκρι θα είναι συγκεντρωµένες στα χαµηλότερα επίπεδα .

° Σε µία φωτεινή εικόνα αντίθετα οι τιµές του γκρι θα είναι συγκεντρωµένες σε υψηλότερα επίπεδα .

° Μία εικόνα µε χαµηλό contrast θα έχει για παράδειγµα τις τιµές συγκεντρωµένες στο κέντρο .

Το contrast εκφράζει τις διαφορές φωτεινότητας ανάµεσα σε φωτεινές και σκοτεινές περιοχές µιας φυσικής σκηνής [13]. Το brightness είναι ένας παράγοντας ο οποίος επηρεάζει την συνολική άποψη µιας εικόνας και αναφέρεται στην συνολική φωτεινότητα ή σκοτεινότητα αυτής . Το contrast µεταβάλλει τις αντιθέσεις ή την φωτεινότητα µιας εικόνας

και µπορεί να επιτευχθεί µέσω contrast stretching. Το contrast stretching αποτελεί µία τεχνική βελτίωσης εικόνας η οποία βελτιώνει τις αντιθέσεις µιας εικόνας “ απλώνοντας ” το εύρος τιµών των εικονοστοιχείων της στο [0,L-1].

40

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

Εικόνα 7: Ιστόγραµµα σκοτεινής , φωτεινής και εξισωµένης εικόνας [16]

41

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

2.1.2 Γραµµικές και Μη Γραµµικές τεχνικές τροποποίησης ιστογράµµατος

Οι τεχνικές µετασχηµατισµού ιστογράµµατος µιας εικόνας µπορούν να ταξινοµηθούν σε γραµµικές , µη γραµµικές και προσαρµοστικές . Οι γραµµικές και µη γραµµικές µετασχηµατίζουν τις τιµές των εικονοστοιχείων χρησιµοποιώντας γραµµικές και µη γραµµικές µαθηµατικές συναρτήσεις αντίστοιχα .

Γραµµικές Τεχνικές Μη Γραµµικές Τεχνικές

Contrast Stretching Λογαριθµική συνάρτηση

, = ∙ + → = ∙10 ∙ + 1

Καταπνίγει τις φωτεινές περιοχές και απλώνει τις , = = − ∙ σκοτεινές .

Εκθετική συνάρτηση − = ∙ − + − = ∙ ∙ − 1 f f f k < ≤ k1 k 0,1 . K 1 , , = , … , −

Κατωφλίωση Κανόνας ∆ύναµης ( Power Law ) = , ≤ = ∙ Ενισχύει τις σκοτεινές τιµές για k < 1 , ενώ καταπνίγει τις υψηλές τιµές για k 1. = , > > Αν k = 2 ,κανόνας τετραγώνου µοιάζει µε την εκθετική συνάρτηση Αν k = 3 κανόνας κυβικής ρίζας , µοιάζει µε την λογαριθµική συνάρτηση

Πολυεπίπεδος τεµαχισµός f f f = , k < ≤ k+1

Πίνακας 2: Γραµµικές και Μη Γραµµικές Τεχνικές Τροποποίησης Ιστογράµµατος [16]

Σηµείωση : 0 g L 1 = < < = − 8 Συνήθως εργαζόµαστε µε εικόνες βάθους 8 ,δηλαδή L = 2 − 1 = 255, οπότε 0 < < 255 .

42

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

2.1.3 Προσαρµοστικές τεχνικές τροποποίησης ιστογράµµατος

Μία άλλη κατηγορία τεχνικών τροποποίησης ιστογράµµατος είναι οι προσαρµοστικές . Η πιο αντιπροσωπευτική και συχνά χρησιµοποιούµενη είναι η απλή ισοστάθµιση ( ή εξίσωση ) ιστογράµµατος ( τοπική και ολική ). Η ολική εξίσωση ιστογράµµατος εφαρµόζεται σε όλη την εικόνα ταυτόχρονα . Η τοπική εξίσωση πραγµατοποιεί σάρωση της εικόνας µε ένα µικρό ή µεσαίο παράθυρο και εφαρµόζει ολική εξίσωση στο παράθυρο . Χαρακτηριστικό της είναι η µεγάλη υπολογιστική πολυπλοκότητα η οποία ενισχύεται σε εικόνες µεγάλων διαστάσεων . Αυτό που µας ενδιαφέρει και θα χρησιµοποιήσουµε είναι η ολική εξίσωση ιστογράµµατος .

Ολική Εξίωση Ιστογράµµατος [10]

Έστω το διάνυσµα στήλη του οποίου τα στοιχεία είναι ο αριθµός των εικονοστοιχείων ℎ ℎ που αντιστοιχούν στην ένταση . Η πιθανότητα της έντασης , ορίζεται ως (1) = Η αθροιστική συνάρτηση κατανοµής CDF, της έντασης προκύπτει ως

(2) = ∑ Η συνάρτηση της εξίσωσης ιστογράµµατος αντιστοιχεί το εικονοστοιχείο εισόδου σε νέα τιµή για το εικονοστοιχείο εξόδου έτσι ώστε το ιστόγραµµα της νέας εικόνας να είναι οµοιόµ oρφο . Η συνάρτηση µετασχηµατισµού αντιστοιχεί την ένταση της εικόνας εισόδου στην τιµή στην εικόνα εξόδου . Για µια εικόνα , η συνάρτηση − µετασχηµατισµού είναι η ακόλουθη :

(3), η µέγιστη ένταση . = ⌊2 − 1 ∙ + 0.5⌋ = 0,1, … . 2 − 1 Αν αγνοήσουµε τον τελεστή στρογγυλοποίησης , και συνδυάσουµε τις (2),(3) τότε

προκύπτει η ακόλουθη αναδροµική σχέση για 8-bits εικόνες : (4) − = 255 ∙ , 0 < ≤ 255, = 255 ∙ Οι παραπάνω εξισώσεις µπορούν να λάβουν την µορφή ∙ = ℎ (5)

43

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

1 0 0 …………… 0 0 0 -1 1 0 …………… 0 0 0 0 -1 0 … … … … . .. 0 0 0 (6) = ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ 0 0 0 …………… -1 1 0 0 0 0…………… 0 -1 1

Και (7) το κανονικοποιηµένο διάνυσµα . ℎ = 255 ℎ

Το κανονικοποιηµένο διάνυσµα δεν είναι τίποτε άλλο από τις πιθανότητες εµφάνισης κάθε επιπέδου του γκρι πολλαπλασιασµένες επί 255 ( τιµή µεγαλύτερου επιπέδου του γκρι ).

Τοπική Εξίσωση Ιστογράµµατος

Η παραπάνω διαδικασία περιγράφει τη ολική εξίσωση ιστογράµµατος µε σκοπό τη βελτίωση των αντιθέσεων της εικόνας . Ανάλογα η διαδικασία αυτή θα µπορούσε να εφαρµοστεί τοπικά . Χρησιµοποιούµε ένα κυλιόµενο παράθυρο µε επικάλυψη το οποίο χρησιµοποιεί τη τεχνική της ολικής εξίσωσης ιστογράµµατος µε τη διαφορά ότι µετασχηµατίζει το εικονοστοιχείο που βρίσκεται στο κέντρο του παραθύρου . Με αυτό τον τρόπο θα µετασχηµατίσει τα εικονοστοιχεία της εικόνας . Επιπλέον , για τον µετασχηµατισµό όλων των εικονοστοιχείων , θα χρειαστεί να γίνει padding µε κατάλληλο αριθµό από τις συµµετρικές τιµές της εικόνας στην περίµετρο , έτσι ώστε να µετασχηµατιστούν και τα εικονοστοιχεία που βρίσκονται στα όρια της . Από την άλλη όµως για να µειωθεί η χρονική και υπολογιστική πολυπλοκότητα της υλοποίησης συνήθως µένουν ανεπεξέργαστα τα εικονοστοιχεία στα όρια της εικόνας .

Άλλες τεχνικές ισοστάθµισης ιστογράµµατος [25] ° Brightness Preserving Histogram Equalization with Maximum Entropy ° Brightness preserving BiHistogram Equalization (BPHE) ° Bihistogram equalization (BBHE) ° Dualistic subimage histogram equalization (DSHE) ° Recursive Mean-separate Histogram Equalization ° Minimum Within-Class Variance Multi-Histogram Equalization (MWCVMHE) ° Minimum Middle Level Squared Error Multi-Histogram Equalization (MMLSEMHE)

44

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

2.2 Εξίσωση Ιστογράµµατος και χρωµατικά συστήµατα

Η εξίσωση ιστογράµµατος µπορεί να εφαρµοστεί σε ποικίλα χρωµατικά συστήµατα [17], [18], [25], [26] . Μεταξύ αυτών είναι τα RGB, LAB, YIQ, YCbCr, HSV, HSI κ.ο.κ. Οι προς επεξεργασία εικόνες βρίσκονται στο RGB χρωµατικό σύστηµα και ακολούθως µετασχηµατίζονται σε ένα από τα προαναφερθέντα χρωµατικά συστήµατα . Η ισοστάθµιση ιστογράµµατος συνήθως εφαρµόζεται στα κανάλια που σχετίζονται µε την ένταση και όχι σε αυτά που σχετίζονται µε το χρώµα . Αν γίνει ισοστάθµιση ιστογράµµατος και στις συνιστώσες που σχετίζονται µε το χρώµα η νέα εικόνα θα έχει µεγάλες διαφορές µε την αρχική [27]. Η ισοστάθµιση ιστογράµµατος δηλαδή εφαρµόζεται στις συνιστώσες L,Y,V,I αντίστοιχα και η εικόνα ανασυντίθενται στο τρέχον χρωµατικό σύστηµα . Τέλος , επαναφέρεται η εικόνα στο αρχικό RGB χρωµατικό συστήµα και έτσι ανακτάται η νέα βελτιωµένης αντίθεσης RGB εικόνα .

Εικόνα 8: Έγχρωµη εικόνα Lenna 3

3 Η πηγή της εικόνας και των R,G,B ιστογραµµάτων προέρεχεται από το διαδίκτυο .

45

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

Εικόνα 9: Ιστόγραµµα συνιστωσών R, G, B της εικόνας Lenna

2.3 Το ιστόγραµµα ως εργαλείο παραγωγής ενεργειακά πράσινων εικόνων

Το ιστόγραµµα µπορεί να αποτελέσει χρήσιµο εργαλείο παραγωγής εικόνων βελτιωµένης αντίθεσης και φωτεινότητας αλλά και χαµηλής ενέργειας . Στην βιβλιογραφία προτείνονται λύσεις οι οποίες χρησιµοποιούν υπάρχουσες απλές τεχνικές ( γραµµικές , µη γραµµικές , προσαρµοστικές ) τροποποίησης ιστογράµµατος , µε σκοπό την παραγωγή εικόνων βελτιωµένης αντίθεσης αλλά και που καταναλώνουν λιγότερη ενέργεια για την απεικόνιση τους . Η βάση τους είναι µία συνάρτηση η οποία εµπλέκει δύο όρους . Ο πρώτος όρος αφορά την ισοστάθµιση του τροποποιηµένου ιστογράµµατος της εικόνας εισόδου και ο δεύτερος την ενέργεια της προκύπτουσας απεικόνισης . Στόχος είναι η εύρεση του ελαχίστου αυτής της συνάρτησης κόστους .

Το ελάχιστο είναι ένα διάνυσµα µε τα επίπεδα του γκρι της νέας εικόνας η οποία θα είναι βελτιωµένης αντίθεσης αλλά και χαµηλότερης ενέργειας . Ο όρος που αφορά την ενέργεια πολλαπλασιάζεται µε µία παράµετρο , και στόχος είναι η εύρεση της κατάλληλης παραµέτρου που επιτυγχάνει το στόχο . Υπάρχουν προσεγγίσεις στην βιβλιογραφία που χρησιµοποιούν αυτή την ιδέα και φαίνονται στα [10], [19], [20]. Ακολούθως , θα παρουσιάσουµε την δική µας πρόταση η οποία θα αποτελέσει τη βάση της εφαρµογής που θα αναπτυχθεί και παρουσιαστεί στο επόµενο κεφάλαιο µε στόχο τη χρήση της σε Android κινητές συσκευές .

46

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

2.4 Νέα Πρόταση

2.4.1 Περιγραφή προτεινόµενης λύσης

Στόχος της εργασίας είναι να µειώσουµε την ενέργεια που δαπανά η µπαταρία µιας κινητής συσκευής µε σκοπό την αύξηση της διάρκειας ζώης της . Όπως έχουµε ήδη δει , πολλές λύσεις έχουν προταθεί και δοκιµαστεί µε πολύ καλά αποτελέσµατα προς αυτή την κατεύθυνση . Κάθε λύση προσεγγίζει το πρόβληµα µε διαφορετικό τρόπο προκειµένου να επιτευχθεί ένας κοινός σκοπός , η µείωση της καταναλισκόµενης ενέργειας .

Κάθε χρήστης χρησιµοποιεί µία εικόνα της προτίµησης του σαν wallpaper στην οθόνη της συσκευής που χρησιµοποιεί . Η χρήση αυτής της εικόνας έχει σαν αποτέλεσµα η οθόνη να καταναλώνει ενέργεια για την απεικόνιση της . Η ενέργεια που δαπανά η οθόνη σχετίζεται µε τις τιµές φωτεινότητας και χρώµατος των εικονοστοιχείων της εικόνας . Στο [21] µελετώνται αλγόριθµοι µετασχηµατισµού χρώµατος µε σκοπό την αντικατάσταση των χρωµάτων (background/foreground, theme ) σε mobile GUIs , µε νέα που δαπανούν λιγότερη ενέργεια .Τα αποτελέσµατα δείχνουν ότι οι προτεινόµενες λύσεις στο [21] µπορούν να εξοικονοµήσουν ενέργεια πάνω από 75% µε αποδεκτά ποιοτικά αποτελέσµατα . Η δοκιµή τους δεν έγινε σε συµβατικές LCD οθόνες αλλά σε µία νέα τεχνολογία οθονών OLED 4. Αυτοί οι αλγόριθµοι επικεντρώνονται στη « δηµιουργία » νέων λιγότερο ενεργειακά δαπανηρών χρωµατών ενώ η δική µας προσέγγιση αφήνει ανεπηρέαστα τα χρώµατα και εστιάζει στην φωτεινότητα και τις αντιθέσεις . ∆εδοµένου ότι το λευκό καταναλώνει τη µέγιστη και το µαύρο την ελάχιστη ενέργεια , µειώνοντας τη φωτεινότητα της εικόνας θα µπορέσουµε να µειώσουµε την ενεργειακή της κατανάλωση . Η λύση που προτείνουµε επιχειρεί να µειώσει την ενέργεια που δαπανάται από την οθόνη της έξυπνης συσκευής µε σκοπό να ελαττώσει την συνολική ενέργεια που αυτή καταναλώνει .

Συγκεκριµένα , η βάση της πρότασης µας είναι ένας γραµµικός και ακολούθως προσαρµοστικός µετασχηµατισµός των τιµών φωτεινότητας των εικονοστοιχείων της προς επεξεργασία εικόνας ώστε να εξοµαλύνει τις αντιθέσεις και να µειώσει την συνολική

4 OLED (Organic Light-Emitting Diode): Μία νέα υποσχόµενη τεχνολογία στην εξοικονόµηση ενέργειας σε κινητές συσκευές διότι τα εικονοστοιχεία της είναι light-emitting και η συνεισφορά τους στην κατανάλωση ενέργειας εξαρτάται από το χρώµα των εικονοστοιχείων του περιεχοµένου απεικόνισης (display content dependent ).

47

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

φωτεινότητα του υποψήφιου wallpaper µε τελικό σκοπό να µειώσει την ενέργεια απεικόνισης του . Όσο πιο σκοτεινή είναι η εικόνα τόσο λιγότερη ενέργεια θα δαπανά η οθόνη και συνεπώς η συσκευή για την απεικόνισή της .

Τα βήµατα του αλγόριθµου φαίνονται συνοπτικά παρακάτω .

2.4.2 Αλγόριθµος σε βήµατα

1. ∆ιαβάζει την RGB εικόνα εισόδου I

2. Μετατροπή της εικόνας από το χρωµατικό σύστηµα RGB στο YCbCr και ανάκτηση των τριών συνιστωσών Y,Cb,Cr .

3. Εφαρµογή της τεχνικής Concurrent Brightness & Contrast Scaling στην συνιστώσα

φωτεινότητας (όχι στις συνιστώσες χρώµατος ), η οποία δεν είναι τίποτα παραπάνω από µια γραµµική συνάρτηση της µορφής g=a ·f+b , όπου g οι τιµές φωτεινότητας των pixels της νέας µετασχηµατισµένης εικόνας και f οι τιµές φωτεινότητας των pixels της αρχικής εικόνας . Πρέπει να βρούµε τα κατάλληλα a>0,b τα οποία εξασφαλίζουν την ελαχιστοποίηση της ενέργειας της εικόνας χωρίς να υποβαθµίζεται η ποιότητα της απεικόνισης . Η παράµετρος a ρυθµίζει το contrast και η παράµετρος b την φωτεινότητα της εικόνας .

4. Έλεγχος αν οι προκύπτουσες τιµές φωτεινότητας βρίσκονται µεταξύ 0-255.Αν είναι κάτω από 0 τίθενται στο 0 ενώ αν είναι πάνω από 255 τίθενται στο 255.

5. Η συνιστώσα φωτεινότητας Y µετά τον προηγούµενο µετασχηµατισχό υπόκεινται επιπλέον ολική εξίσωση ιστογράµµατος η οποία εξοµαλύνει τις αντιθέσεις .

6. Ανασύνθεση συνιστωσών εικόνας στο YCbCr και επιστροφή της νέας επεξεργασµένης εικόνας στο RGB

7. Εκτίµηση ενέργειας που καταναλώνει η νέα εικόνα η οποία πρέπει να είναι µικρότερη από την αρχική , και αξιολόγηση της ποιότητας της προκύπτουσας εικόνας µέσω των µετρικών PSNR,MSE,SSIM .

48

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

Εικόνα 10: Block διάγραµµα αλγόριθµου

2.4.3 Μετρικές αξιολόγησης ποιότητας απεικόνισης

Μέσο Τετραγωνικό Σφάλµα : Μετρά την υποβάθµιση της ποιότητας της εικόνας συγκριτικά µε την αρχική εικόνα . Μαθηµατικά ορίζεται ως :

∑ ∑,, ( ) = ∙ 8

Όπου M,N οι διαστάσεις τις εικόνας . Αν πρόκειται για έγχρωµη εικόνα το MSE υπολογίζεται για κάθε συνιστώσα R,G,B διάστασης MxN στην οποία αναλύεται η εικόνα και σαν τελική τιµή του MSE υπολογίζεται ο µέσος όρος τους . Peak Signal Noise Ratio (PSNR): αντίστοιχα δίνει την ποιότητα της ανακατασκευασµένης εικόνας µετά από επεξεργασία και όσο πιο µεγάλη είναι η τιµή τόσο καλύτερη ποιοτικά είναι η προκύπτουσα απεικόνιση . Μαθηµατικά ορίζεται ως :

PSNR (9) = 20 ∙ √

Για έγχρωµες εικόνες οι τιµές υπολογίζονται ως ο µέσος όρος των τιµών για κάθε συνιστώσα στην οποία αναλύεται η εικόνα .

49

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

∆είκτης Οµοιότητας Εικόνων (SSIM ): Πρόκειται για µία µετρική η οποία εκτιµά την οµοιότητα ανάµεσα σε δύο εικόνες . Είναι ο πιο αξιόπιστος δείκτης εκτίµησης του πόσο κοντά είναι µια εικόνα µετά από κάποια επεξεργασία σε σχέση µε την αρχική εικόνα .

Λαµβάνει τιµές στο διάστηµα 0,1 και όσο πιο κοντά είναι οι δύο εικόνες ( αρχική και επεξεργασµένη ) τόσο πιο κοντά στην µονάδα θα είναι οι τιµές που λαµβάνει αυτός ο δείκτης .

2.4.4 Μετρικές εκτίµησης ισχύος εικόνας

Η συνάρτηση εκτίµησης της ισχύος των εικόνων βασίζεται στην µετρική

(10) = ∑ + + Όπου N αριθµός των εικονοστοιχείων των υποεικόνων R,G,B αντίστοιχα .

Εναλλακτικά βασιζόµενοι στο ιστόγραµµα :

( ) = + + 11 , , : ∆ιαγώνιοι πίνακες διάστασης 256x256 των οποίων τα στοιχεία είναι µηδέν εκτός από τα διαγώνια που οι τιµές τους ταυτίζονται µε τις τιµές ιστογράµµατος των υποεικόνων R, G, B στα επίπεδα 0-255.

: διάνυσµα γραµµή µε τις τιµές των επιπέδων του γκρι 0-255 Μία ακόµα µετρική οδηγός είναι το ποσοστό µείωσης της ισχύος της µετασχηµατισµένης εικόνας το οποίο ορίζεται ως εξής :

= 1 − ∗ 100 % (12)

Αν η µετρική αυτή λάβει αρνητικές τιµές σηµαίνει ότι η επεξεργασία αύξησε την ενέργεια της εικόνας . Εµείς ψάχνουµε εκείνο το ζευγάρι παραµέτρων που µειώνει την ενέργεια αλλά και διατηρεί την ποιότητα της απεικόνισης σε αποδεκτά επίπεδα για τον χρήστη . Αν και το οπτικό αποτέλεσµα ικανοποιεί τον χρήστη µπορεί να αποθηκεύσει την µετασχηµατισµένη εικόνα .

50

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

2.4.5 Πειραµατική αξιολόγηση αλγορίθµου σε Matlab Η αξιολόγηση της ενεργειακής αποδοτικότητας της λύσης που παρουσιάστηκε στο κεφάλαιο 2 θα γίνει σε jpeg εικόνες οι οποίες αποτελούν wallpapers τα οποία ο χρήστης µπορεί να κατεβάσει και αποθηκεύσει στην συσκευή του και ενδεχοµένως να χρησιµοποιήσει κάποιο από αυτά . Η προτεινόµενη λύση µπορεί να εφαρµοστεί όχι µόνο σε jpeg εικόνες αλλά και σε οποιοδήποτε πρότυπο συµπίεσης εικόνας όπως png, gif . Η δοκιµή θα γίνει ενδεικτικά σε 5 διαφορετικές εικόνες [30].

Εικόνα 11: Οπτικά αποτελέσµατα πρότασης για εικόνα 1 και a=1, b= 1:10

51

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

Εικόνα 12: Οπτικά αποτελέσµατα πρότασης για εικόνα 1 και a=1, b= 10:10:100

Παρατηρούµε ότι όσο αυξάνει η τιµή της παραµέτρου b η οποία ουσιαστικά καθορίζει τη φωτεινότητα της εικόνας , η εικόνα γίνεται όλο και πιο σκοτεινή και η ένεργειά της µειώνεται σηµαντικά .

Εικόνα 13: Μετρικές αξιολόγησης ποιότητας εικόνας 1 για a=1, b=10:10:100

52

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

Εικόνα 14 : Οπτικά αποτελέσµατα πρότασης για εικόνα 1 και a=0.6, b= 10:10:100

Παρατηρούµε ότι για τιµές της παραµέτρου a <1 , η οποία σχετίζεται µε το contrast της εικόνας , η ενέργειά της αρχικά αυξάνεται κάτι το οποίο δεν είναι επιθυµητό , και για µεγάλες τιµές της παραµέτρου b που σχετίζεται µε την φωτεινότητα επιτυγχάνεται µία σηµαντική µείωση γύρω στο 45%.

53

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

Εικόνα 15: Μετρικές αξιολόγησης ποιότητας εικόνας 1 για a=0.6, b=10:10:100

Η µετρική SSIM είναι η πιο αντιπροσωπευτική και αξιόπιστη για την αξιολόγηση της ποιότητας της προκύπτουσας απεικόνισης . Όπως αποδεικνύει και η παραπάνω γραφική παράσταση όσο η εικόνα “ αλλοιώνεται ” η τιµή της φθείνει από την µέγιστη τιµή 1. Παρακάτω ακολουθούν γραφικά και οπτικά αποτελέσµατα για 4 ακόµα εικόνες .

Εικόνα 16: Μετρικές αξιολόγησης ποιότητας για εικόνα 2 και a=1, b=10:10:100

54

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

Εικόνα 17 Οπτικά αποτελέσµατα πρότασης για εικόνα 2 και a=1,b=10:10:100

Εικόνα 18: Μετρικές αξιολόγησης ποιότητας εικόνας 3 για a=1, b=10:10:100

55

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

Εικόνα 19: Οπτικά αποτελέσµατα πρότασης για εικόνα 3 και a=1, b=10:10:100

Εικόνα 20: Μετρικές αξιολόγησης ποιότητας εικόνας 4 για a=1, b=10:10:100

56

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

Εικόνα 21: Οπτικά αποτελέσµατα πρότασης για εικόνα 4 και a=1, b=10:10:100

Εικόνα 22: Μετρικές αξιολόγησης ποιότητας εικόνας 5 για a=1, b=10:10:100

57

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

Εικόνα 23: Οπτικά αποτελέσµατα πρότασης για εικόνα 5 και a=1,b=10:10:100

Σύµφωνα µε τα παραπάνω αποτελέσµατα επιβεβαιώνονται τα ενεργειακά οφέλη της πρότασης µας . Σε κάθεµιά από τις προηγούµενες περιπτώσεις ο αλγόριθµος έχει διαφορετική επίδραση και µπορεί να εξοικονοµήσει σηµαντικά ποσά ενέργειας . Όµως σύµφωνα µε τον δείκτη SSIM η τιµή οµοιότητας της αρχικής εικόνας και της προκύπτουσας µειώνεται αρκετά σε σχέση µε τη βέλτιστη τιµή της και σε αρκετές από αυτές πέφτει κάτω από 0.5 ώστε να πετύχουµε 50% ποσοστό µείωσης . Υπάρχουν όµως και εικόνες στις οποίες µπορούµε να πετύχουµε ένα καλό SSIM (πιο κοντά στο 1) µε αξιοσηµείωτο ποσοστό µείωσης µεγαλύτερο του 50%.

Τα αποτελέσµατα είναι ενδεικτικά . Αυτό που πρέπει να τονίσουµε είναι ότι οι παράµετροι a,b µπορούν να συνδυαστούν και να λάβουν ποικίλες τιµές όµως µε διαφορετικά ενεργειακά οφέλη ή ζηµία για την κάθε εικόνα . Αυτό που πειραµατικά διαπιστώσαµε είναι ότι για a = 1 και b από 10 µέχρι 100 όλες η επιλεχθείσες εικόνες µπορούν να πετύχουν σηµαντική µείωση της ενέργειας τους µε ικανοποιητικά οπτικά αποτελέσµατα . Επίσης , αυτό που διαπιστώσαµε είναι ότι η ισοστάθµιση ιστογράµµατος από µόνη της δεν µπορεί πάντα να πετύχει µικρότερη ενέργεια .

58

Κεφάλαιο 2: Επεξεργασία εικόνας µε χρήση ιστογράµµατος

Για παράδειγµα , στη δεύτερη εικόνα αν εφαρµόσουµε µόνο ισοστάθµιση ιστογράµµατος η ενέργειά της αυξάνει . Αυτό που µπορεί να εξασφαλίσει ο αλγόριθµος µας , λόγω της παραµετρικής εξάρτησης , είναι η εξοικονόµηση ενέργειας για κάποιο ζευγάρι παραµέτρων . Ενδεχοµένως κάποια από τις άλλες τεχνικές ισοστάθµισης ιστογράµµατος να µπορούσε να πετύχει καλύτερα ενεργειακά και οπτικά αποτελέσµατα . Όµως , σε αυτή την κατεύθυνση η πρόταση µας είναι η και υπολογιστικά απλή και µε πολύ καλά αποτελέσµατα (οπτικά και ενεργειακά ).

Μετά τον πειραµατισµό σε περιβάλλον Matlab και δεδοµένου ότι η παρούσα µεταπτυχιακή εργασία ασχολείται µε την κατανάλωση ενέργειας σε κινητές συσκευές , σκεφτήκαµε ότι θα ήταν πολύ καλή και χρήσιµη ιδέα η δηµιουργία µίας εφαρµογής η οποία θα µπορούσε να εξοµοιώσει την παραπάνω λειτουργία και να εγκατασταθεί σε κινητά τεχνολογίας Android . Όπως αναφέραµε και στην αρχή του κεφαλαίου σκοπός της είναι η βαθµολόγηση των εικόνων του χρήστη βάσει της ενεργειακής τους φιλικότητας και επιπλέον αν ο χρήστης επιθυµεί , µπορεί να εφαρµόσει τον προτεινόµενο αλγόριθµο για να κάνει µία εικόνα της επιλογής του πιο ενεργειακά αποδοτική . Έτσι , προέκυψε το κεφάλαιο τρία όπου φαίνεται αναλυτικά η λειτουργία της προτεινόµενης εφαρµογής .

59

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

3.1 Αρχιτεκτονική λειτουργικού συστήµατος Android

Η αρχιτεκτονική του λειτουργικού συστήµατος Android αποτελείται από 5 βασικές συνιστώσες . Στην κορυφή βρίσκονται οι Εφαρµογές ( Applications ), και ακολουθούν Πλαίσιο Εφαρµογής ( Application Framework ), Βιβλιοθήκες ( Libraries ), Χρόνος Εκτέλεσης ( Android Runtime ) και Πυρήνας Linux (Linux Kernel ). Στο ακόλουθο σχήµα παρουσιάζονται τα 4 διακριτά επίπεδα της αρχιτεκτονικής του Android .

Εικόνα 24: Αρχιτεκτονική Android[31]

61

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

To Android βασίζεται στην έκδοση 2.6 των Linux για τις υπηρεσίες στο κεντρικό σύστηµα , όπως ασφάλεια , διαχείριση µνήµης , διαχείριση διεργασιών , δικτύωση καθώς και άλλες υπηρεσίες λειτουργικού συστήµατος . Ο πυρήνας λειτουργεί ακόµα ως διαχωριστικό στρώµα µεταξύ του υλικού και του υπόλοιπου λογισµικού . Το Android περιλαµβάνει ένα σύνολο από C/C++ βιβλιοθήκες που χρησιµοποιούνται από διάφορες συνιστώσες του λειτουργικού συστήµατος . Αυτές οι δυνατότητες προσφέρονται στους προγραµµατιστές µέσω του πλαισίου εφαρµογής του Android . Στο επίπεδο των βιβλιοθηκών περιλαµβάνεται και ο χρόνος εκτέλεσης Android .

Σε αυτό το επίπεδο υπάρχουν οι βασικές βιβλιοθήκες της Java καθώς επίσης και η εικονική

µηχανή Dalvik .Υπεράνω του επίπεδου των βιβλιοθηκών και του χρόνου εκτέλεσης βρίσκεται το πλαίσιο εφαρµογής . Το συγκεκριµένο επίπεδο παρέχει υψηλού επιπέδου δοµικές µονάδες τις οποίες µπορούµε να χρησιµοποιούµε για τη συγγραφή των εφαρµογών µας . Αυτό το πλαίσιο είναι προ-εγκατεστηµένο στο Android , αλλά είναι εύκολα επεκτάσιµο , δεδοµένου ότι ο κάθε κατασκευαστής µπορεί να συµπληρώσει βιβλιοθήκες που δεν υπήρχαν . Στο επίπεδο των εφαρµογών βρίσκονται όλες εκείνες οι εφαρµογές που χρησιµοποιεί ο χρήστης χωρίς να γνωρίζει τη διεργασία που γίνεται στα χαµηλότερα επίπεδα . Μερικές από αυτές τις εφαρµογές είναι ο Browser, email client, SMS program , οι επαφές , το ηµερολόγιο , χάρτες (Google Maps ) κλπ . Όπως ήδη αναφέρθηκε όλες οι εφαρµογές είναι γραµµένες στη γλώσσα προγραµµατισµού Java .

62

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

3.2 Περιγραφή Προτεινόµενης Android Εφαρµογής

Μετά τις εισαγωγικές πληροφορίες σχετικά µε την αρχιτεκτονική του λειτουργικού συστήµατος Android , στην ενότητα αυτή θα περιγράψουµε αναλυτικά τα δοµικά στοιχεία της προτεινόµενης εφαρµογής . Επίσης , θα δείξουµε πως αυτή δοµήθηκε και λειτουργεί µε σχετικές εικόνες στιγµιότυπα της Android κινητής συσκευής που τρέχει την προτεινόµενη εφαρµογή .

Περιβάλλον Εξοµοίωσης Χαρακτηριστικά Μηχανήµατος Android Studio 1.3.1 Λειτουργικό σύστηµα Ubuntu 15.10, 64-bit Compile SDK Version: API 22, Android Μνήµη 3.8 GB 5.1 (Lollipop) Processor Intel Core i5 CPU M460 2.53GHz x 4

Πίνακας 3: Τεχνικά χαρακτηριστικά

Η εξωµοίωση της λειτουργίας της εφαρµογής γίνεται σε εικονικές συσκευές τις οποίες δηµιουργεί ο χρήστης µέσω του AVD Manager. Το Android Virtual Device (AVD ) είναι ένα εικονικό smartphone που τρέχει Android , στο οποίο µπορούµε εύκολα να εκτελέσουµε οποιοδήποτε πρόγραµµα έχουµε δηµιουργήσει . Το προφανές πλεονέκτηµα του AVD είναι ότι µπορούµε να δούµε πως το λογισµικό µας θα προβάλλεται σε διαφορετικά smartphones τα οποία υποστηρίζουν Android . Μία άποψη της αρχικής οθόνης και των εφαρµογών του AVD φαίνεται στην εικόνα που ακολουθεί .

63

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

Εικόνα 25: Άποψη AVD 5, Αρχική Οθόνη -Εφαρµογές

5 AVD: Android Virtual Device

64

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

Για τη δηµιουργία του project της εφαρµογής επιλέγουµε File->New Project .Στις παρακάτω εικόνες φαίνονται οι φόρµουλες που πρέπει να συµπληρωθούν από τον χρήστη .

Εικόνα 26: Άποψη βηµάτων δηµιουργίας project εφαρµογής

Επιλέγουµε Blank Activity

65

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

Εικόνα 27: Άποψη βηµάτων δηµιουργίας project εφαρµογής

Αν ακολουθήσει ο χρήστης τα βήµατα που φαίνονται στις παραπάνω εικόνες προκύπτει µία δενδρική δοµή µε όλα τα αρχεία και τους φακέλους της εφαρµογής . Στον φάκελο java αποθηκεύονται όλες οι κλάσεις της εφαρµογής ενώ τα layouts στον φάκελο res->layout . Στο αρχείο AndroidManifest.xml δηλώνονται οι κλάσεις SecondActivity.java και ThirdActivity.java, µαζί µε την κύρια κλάση MainActivity.java . Επίσης , καθορίζονται και τα permissions που απαιτούνται για την ορθή λειτουργία της εφαρµογής .

Η συνάρτηση showZaire καλείται εσωτερικά στην κλάση MainActivity.java και έχει τον εξής ρόλο . Ανάλογα µε το ποιο από τα δύο κουµπιά πατιέται , τα οποία βρίσκονται στο κεντρικό layout (activity_main.xml) της εφαρµογής , ανοίγει ένα δεύτερο layout το οποίο έχει υλοποιηθεί σε xml και ο κώδικας είναι αποθηκευµένος στα αρχεία second_layout.xml και third_layout.xml αντίστοιχα για το κάθε κουµπί . Αν πατήσουµε οποιοδήποτε από τα δύο κουµπιά , ενεργοποιείται και το αντίστοιχο Activity του οποίου η κλάση πρέπει να δηλώνεται στο αρχείο AndroidManifest.xml ώστε να ανοίξει το αντίστοιχο layout .

66

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

public void showZaire( View view) { String button_test; button_test =((Button) view).getText().toString(); if (button_test.equals( "Energy Rating of Your Pictures" )) { Intent intent1= new Intent( this ,SecondActivity. class ); startActivity(intent1); } else if (button_test.equals( "Concurrent Brightness & Contrast Scaling" )) { Intent intent= new Intent( this ,ThirdActivity. class ); startActivity(intent); }}

Εικόνα 28 :Άποψη Layout εφαρµογής

67

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

Η εικόνα που φαίνεται παραπάνω απεικονίζει το πρώτο layout το οποίο βλέπει ο χρήστης όταν φορτώσει την εφαρµογή . Έχουµε ορίσει ένα TextView το οποίο έχει ενηµερωτικό ρόλο προς το χρήστη και περιγράφει τους δύο στόχους της συγκεκριµένης εφαρµογής . Ακολουθούν δύο κουµπιά -Buttons . Όταν ο χρήστης πατήσει το πρώτο κουµπί του εµφανίζεται ένα δεύτερο layout το οποίο είναι µία λίστα ListView µε όλες τις εικόνες που έχει αποθηκευµένες στο Gallery της συσκευής του .

Για κάθε εικόνα έχει γίνει εκτίµηση της ενέργειας της και βάσει αυτής της τιµής βαθµολογείται µε έναν αριθµό από “αστέρια ”. Η συνάρτηση που υπολογίζει την ενέργεια λαµβάνει σαν εισόδο την εικόνα σε Bitmap µορφή , σαρώνει τα εικονοστοιχεία της εικόνας

και σε κάθε θέση (x,y) ανακτά τις τιµές ( Ri,Gi,Bi). Από αυτές τις τιµές βασιζόµενη στην µετρική που είδαµε στο κεφάλαιο 2 εκτιµά την ενέργεια της εικόνας .Βάσει αυτής της τιµής “βαθµολογεί ” την εικόνα µε έναν αριθµό από “ αστέρια ”. Όσο πιο χαµηλή είναι η ενέργεια της µε τόσο πιο πολλά “αστέρια ” αυτή βαθµολογείται .

Αυτό σηµαίνει ότι ο χρήστης µπορεί να επιλέξει την εικόνα της προτίµησής του µε τη χαµηλότερη ενέργεια και να την χρησιµοποιήσει ως wallpaper στην συσκευή του . Κάνοντας κλικ ή πατώντας “ Enter ” στην εικόνα που προτιµά ο χρήστης και έχει περισσότερα αστέρια , σύµφωνα µε την ενεργειακή αξιολόγησή της , εµφανίζεται ένα µενού µε την επιλογή Set as Wallpaper . Με αυτό τον τρόπο ο χρήστης µπορεί άµεσα να θέσει την εικόνα αυτή σαν background στην οθόνη του .Τα στοιχεία του µενού δηµιουργούνται στο αρχείο menu_list.xml , το οποίο καλείται µέσω της µεθόδου OnCreateContextMenu στην κλάση SecondActivity.java .

Η µέθοδος setWallPaper καλείται εσωτερικά στην κλάση SecondActivity η οποία σχετίζεται µε τη δηµιουργία της λίστας εικόνων . Είναι τύπου void και σαν όρισµα παίρνει την εικόνα σε µορφή Bitmap .Όταν τεθεί η αντίστοιχη εικόνα σαν wallpaper εµφανίζεται µήνυµα "Set wallpaper successfully!" .

68

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

Εικόνα 29: Άποψη λειτουργίας µενού

Κάθε γραµµή της λίστας δοµείται από τα εξής στοιχεία :

• Εικόνα

• Όνοµα εικόνας

• Ενέργεια εικόνας

• Rating bar stars σύµφωνα µε την τιµή της ενέργειας Για να προκύψει η παραπάνω µορφή δηµιουργείται ένα ακόµα layout , το lv_layout.xml το οποίο διαµορφώνει τη γραµµή της λίστας µε τα παραπάνω στοιχεία . Μία άποψη της λίστας

φαίνεται ακολούθως .

69

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

Εικόνα 30: Άποψη λίστας εικόνων

Όταν ο χρήστης πατήσει το δεύτερο κουµπί ανοίγει ένα τρίτο layout,το οποίο υλοποιείται στο αρχείο third_layout.xml . Έχουµε τοποθετήσει δύο seekbars µέσω τον οποίων ο χρήστης θα ελέγχει τις τιµές των παραµέτρων a, b που εµπλέκονται στην γραµµική συνάρτηση µετασχηµατισµού των τιµών φωτεινότητας που είναι αποθηκευµένες στον πίνακα Y στο χρωµατικό σύστηµα YCbCr. Οι τιµές των δύο seekbars έχουν καθοριστεί ώστε να λαµβάνουν τιµές µεταξύ 0-50 και 0-255 αντίστοιχα . Ουσιαστικά οι δύο παράµετροι ελέγχουν τις αντιθέσεις και τη φωτεινότητα της εικόνας αντίστοιχα . ∆ιατηρούµε την τιµή της παραµέτρου a σε µία συγκεκριµένη τιµή και αυξοµειώνουµε την φωτεινότητα µέσω της παραµέτρου b και

βλέπουµε τα οπτικά και ενεργειακά αποτελέσµατα .

70

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

Εικόνα 31:Layout Αλγόριθµου

Κάτω από τα δύο seekbars έχουµε τοποθετήσει ένα Switch Button το οποίο ελέγχει την χρήση ισοσταθµιστή ή όχι . Όταν το κουµπί αυτό είναι ενεργοποιηµένο οι τιµές του Y εκτός από γραµµικό µετασχηµατισµό υπόκεινται ακολούθως ισοστάθµιση ιστογράµµατος . Κάτω από αυτό το κουµπί έχουµε τοποθετήσει ένα TextView το οποίο δείχνει το ποσοστό µείωσης (ή αύξησης ) της ισχύος της εικόνας και ένα ImageView το οποίο απεικονίζει την επιλεχθείσα

εικόνα µετά την επεξεργασία για διάφορες τιµές των παραµέτρων a,b µε ή χωρίς ισοστάθµιση ιστογράµµατος . Σε κάθε περίπτωση αν η εικόνα µετά την επεξεργασία έχει µικρότερη ενέργεια και ικανοποιεί τον χρήστη το οπτικό αποτέλεσµα θα µπορεί να την

αποθηκεύει σε ένα συγκεκριµένο φάκελο µε όνοµα ‘My Pictures’ µέσα στο φάκελο των εικόνων της συσκευής , Gallery , πατώντας το κουµπί ‘Save Image’. Ο χρήστης επιλέγει την εικόνα που θέλει να επεξεργαστεί µέσω του κουµπιού ‘Select Image’. Πατώντας το συγκεκριµένο κουµπί εµφανίζεται µία λίστα επιλογών όπως φαίνεται και στην παρακάτω εικόνα .

71

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

Εικόνα 32: Λίστα φακέλων επιλογής εικόνας

Η συνάρτηση που εφαρµόζει την πρόταση µας , την οποία παρουσιάσαµε και αναλύσαµε στο κεφάλαιο 2, σαρώνει τα εικονοστοιχεία της εικόνας και βασιζόµενη σε κάποιες συγκεκριµένες γραµµικές εξισώσεις ανακτά τις τιµές των pixels από το RGB στο YCbCr και από το YCbCr στο RGB χρωµατικό σύστηµα . ∆εν βασιζόµαστε σε κάποια έτοιµη συνάρτηση για την µετάβαση από το ένα χρωµατικό σύστηµα στο άλλο , όπως κάναµε στα δοκιµαστικά πειράµατα σε Matlab . Η επιλογή των παρακάτω εξισώσεων δεν έγινε τυχαία αλλά βασίζεται στο γεγονός ότι χρησιµοποιούνται εσωτερικά στα πρότυπα συµπίεσης εικόνων και βίντεο JPEG, MPEG1, MPEG2 , MPEG4.

Από 8-bit RGB σε 8-bit YCbCr:

= 0.299 + 0.587 + 0.114

= 128 – 0.168736 – 0.331264 + 0.5

= 128 + 0.5 – 0.418688 – 0.081312

72

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

Από 8-bit YCbCr σε 8-bit RGB :

= + 1.402 – 128

= – 0.34414 – 128 – 0.71414 – 128

= + 1.772 – 128

Εµείς ενδιαφερόµαστε για την συνιστώσα φωτεινότητας Y, στην οποία εφαρµόζουµε έναν

γραµµικό µετασχηµατισµό = ∙ + και ακολούθως εφαρµόζουµε ισοστάθµιση ιστογράµµατος στην νέα µετασχηµατισµένη συνιστώσα .

3.3 Έλεγχος εφαρµογής σε πραγµατική συσκευή

∆οκιµάσαµε την προτεινόµενη εφαρµογή σε µία πραγµατική κινητή συσκευή µε λειτουργικό Android. Σκοπός είναι η επεξεργασία µε τον προτεινόµενο αλγόριθµο , κάποιου από τα backgrounds που έχει ο χρήστης στην συσκευή του και η καταγραφή της εξέλιξης της ποσοστιαίας χωρητικότητας της µπαταρίας . Θα αποτυπώσουµε τα αποτελέσµατα για ένα background πριν και µετά την επεξεργασία µε τον προτεινόµενο αλγόριθµο . Πριν εκτελέσουµε το πείραµα απενεργοποιήσαµε συνιστώσες που δαπανούν ενέργεια από την µπαταρία , δηλαδή τους αισθητήρες και τις ασύρµατες διεπαφές ώστε να έχουµε πιο σαφή εικόνα για τα οφέλη της πρότασης µας , η οποία σχετίζεται µε την οθόνη της συσκευής , στην διάρκεια ζωής της µπαταρίας . Επιπλέον , διατηρήσαµε την φωτεινότητα στο ελάχιστο επίπεδο ώστε να εξασφαλίσουµε ότι όταν αυτή είναι ανοιχτή το backlight της κινητής συσκευής δεν επηρεάζει σηµαντικά την χωρητικότητα της µπαταρίας .

Οι σύγχρονες έξυπνες κινητές συσκευές περιέχουν εφαρµογές που δίνουν στο χρήστη πληροφορίες σχετικά µε την ποσοστιαία χρήση της µπαταρίας από την κάθε συνιστώσα της συσκευής . Η οθόνη είναι η συνιστώσα που δαπανά το µεγαλύτερο ποσοστό από την µπαταρία της συσκευής µαζί µε το δίκτυο κινητής τηλεφωνίας για φωνητικές /βίντεο κλήσεις . Εµείς εργαστήκαµε σε tablet το οποίο δεν χρησιµοποιείται για φωνητικές κλήσεις και για αυτό η οθόνη είναι η πιο ενεργοβόρος συνιστώσα . Το λειτουργικό και το σύστηµα Android δαπανούν και τα δύο µαζί πολύ µικρό ποσοστό από την χωρητικότητα της µπαταρίας . Αυτές οι δύο συνιστώσες δαπανούν πολύ σηµαντικό ποσοστό της τάξης του 80% όταν

73

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

ενεργοποιείται η συσκευή µέχρι να ανοίξουν όλες οι εφαρµογές της . Η ενεργοποίηση του Wi-fi, το Google Play, οι ειδοποιήσεις facebook, viber δαπανούν από την µπαταρία ένα ποσοστό µικρότερο του 10% το καθένα . Επίσης , κάθε χρονική στιγµή ο χρήστης µπορεί να βλέπει και γραφικά την ποσοστιαία εξέλιξη της µπαταρίας .

Η συσκευή σε όλη τη διάρκεια του πειράµατος είναι διαθέσιµη να δεχτεί µηνύµατα ή ειδοποιήσεις αλλά ο χρήστης δεν πραγµατοποιεί κάποια άλλη ενέργεια όπως περιήγηση στον παγκόσµιο ιστό , κατέβασµα αρχείου ήχου ή εικόνας , streaming κ.λπ . τα οποία αποτελούν ενεργοβόρες δραστηριότητες . Αυτό θα µας βοηθήσει ώστε να αποκτήσουµε πιο σαφή άποψη για τα οφέλη στην µπαταρία από τη χρήση της επεξεργασµένης εικόνας ως ταπεσαρία . Επιπλέον , απενεργοποιείται το backlight της οθόνης ( µαύρη οθόνη ) µετά από κάποιο καθορισµένο χρόνο το οποίο εξασφαλίζει ότι καταναλώνει την ελάχιστη ενέργεια ( σχεδόν µηδενική ) από την µπαταρία ενώ το υπόλοιπο υποσύστηµα της οθόνης είναι κανονικά ενεργό . Μπορεί η φωτεινότητα της οθόνης να είναι στο µηδέν αλλά αυτή καταναλώνει ενέργεια για την φόρτωση του wallpaper που έχει επιλεγεί . Η συσκευή σε αυτή την κατάσταση είναι σε αδράνεια (idle), δηλαδή δεν τρέχουν εφαρµογές . Πριν την έναρξη του πειράµατος φορτίσαµε την µπαταρία πλήρως (στο 100%), αποσυνδέσαµε την συσκευή από την AC φόρτιση και κάθε 10 λεπτά καταγράφαµε την νέα ποσοστιαία χωρητικότητα της µπαταρίας . Μεταξύ των µετρήσεων η φωτεινότητα της οθόνης έκλεινε . Την ίδια διαδικασία ακολουθήσαµε και για το επεξεργασµένο wallpaper και καταγράψαµε τα αντίστοιχα αποτελέσµατα . Η επεξεργασία µέσω της εφαρµογής έγινε πριν την έναρξη του πειράµατος και το νέο wallpaper αποθηκεύτηκε στο φάκελο Λευκώµατα της συσκευής .

Η γραφική παράσταση που ακολουθεί αποτυπώνει πως εξελίσσεται η χωρητικότητα της µπαταρίας σε ένα χρονικό διάστηµα δύο ωρών για τα δύο wallpaper.

74

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

Εικόνα 33: Ποσοστιαία εξέλιξη µπαταρίας σε Android συσκευή Tablet (Kit-Kat 4.4.2) για το αρχικό και το επεξεργασµένο background.

Μετρική

% − % έ = %

% ∶ %Μπαταρίας_νέο_background

% ∶ %Μπαταρίας_αρχικό_background

Υπολογίζουµε αυτό το κέρδος για όλες τις πειραµατικές µετρήσεις στις αντίστοιχες χρονικές στιγµές και εκτιµάµε το µέσο όρο τους . Αυτή η τιµή θα είναι το µέσο κέρδος . Για το συγκεκριµένο background το όφελος είναι περίπου 1.82% κατά µέσο όρο . Με άλλα λόγια στις αντίστοιχες χρονικές στιγµές το πόσοστο µείωσης της µπαταρίας είναι µικρότερο σε σχέση µε το αρχικό wallpaper. ∆ηλαδή το ποσοστό µείωσης της µπαταρίας είναι µικρότερο στην περίπτωση του επεξεργασµένου wallpaper. Επίσης , σε ένα χρόνικο διάστηµα δύο ωρών

75

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

που διήρκησε το πείραµα , για το αρχικό wallpaper η χωρητικότητα της µπαταρία µειώθηκε κατά 13% ενώ µε το νέο wallpaper η ποσοστιαία µείωση είναι 10%. Συνεπώς το όφελος συνολικά στις 2 ώρες είναι 3%.

Παράλληλα , επιβεβαιώσαµε µέσα από πειραµατισµό την επίδραση του backlight της οθόνης στην αυτονοµία της συσκευής .Όπως είναι αναµενόµενο έχει αρνητική επίδραση στην χωρητικότητα της µπαταρίας και κατά συνέπεια στο χρόνο αυτονοµίας της συσκευής . Συγκεκριµένα , ορίσαµε ένα background και ρυθµίσαµε η οθόνη να κλείνει ( το backlight στο µαύρο ) µετά από δύο λεπτά αδράνειας της συσκευής . Αυτή η ρύθµιση συµβάλλει στην αύξηση του χρόνου αυτονοµίας της συσκευής και κατ ’ επέκταση στη διάρκεια ζωής της µπαταρίας . Η συσκευή ήταν φορτισµένη πλήρως , αποσυνδεδεµένη από την AC φόρτιση . Μετά από ένα διάστηµα 8 ωρών αδράνειας της συσκευής ενεργοποιούµε στιγµιαία την οθόνη και παρατηρούµε τα εξής . Το ποσοστό της µπαταρία της συσκευής που χρησιµοποιούνταν από την οθόνη για την προβολή του φόντου όσο ήταν σε αδράνεια αντιστοιχούσε στο 66-67% της χωρητικότητας της µπαταρίας . Ακόµα και σε αδράνεια µε µαύρη οθόνη ( κλειστό backlight) η οθόνη κατέχει τα πρωτεία στην ποσοστιαία χρήση της µπαταρίας . Εµείς αλλάζουµε τη φωτεινότητα της οθόνης και τη ρυθµίζουµε στο µέγιστο επίπεδο και ανανεώνουµε . Μέσα σε ένα χρονικό διάστηµα περίπου 10 λεπτών το ποσοστό της µπαταρίας που χρησιµοποιούσε η οθόνη αυξήθηκε στο 88% και σταδιακά έφτασε στο 93-94%. Παράλληλα ο ρύθµος µε τον οποίο µειωνόταν η χωρητικότητά της ήταν µεγαλύτερος . Τα ποσοστά αυτά δεν είναι σταθερά αλλά εξαρτώνται από το φόντο που χρησιµοποιείται .

Processor Type: DualCore-A23 Έκδοση Android: 4.4.2 (Kit-Kat) Έκδοση Πυρήνα : 3.4.39 builder@Exdroid # 108 Αριθµός Έκδοσης : v0.0.1

Πίνακας 4: Χαρακτηριστικά Συσκευής Πειραµατισµού

Συµπερασµατικά , αυτό που διαπιστώσαµε είναι ότι µπορεί να επιτευχθεί κάποιο µικρό όφελος συνολικά στην διάρκεια ζωής της µπαταρίας . Αυτό το κέρδος δεν είναι σταθερό αλλά εξαρτάται από την εικόνα -wallpaper, την ενέργειά της και το ποοσοστό µείωσης αυτής που

76

Κεφάλαιο 3: Παρουσίαση Android εφαρµογής

µπορεί να επιτευχθεί από την επεξεργασία της µε την πρότασή µας . Αυτό που πρέπει να τονίσουµε ότι στην οθόνη αυτών των σύγχρονων συσκευών δεν αποτυπώνεται µόνο το wallpaper που επιλέγει ο εκάστοτε χρήστης αλλά και κουµπιά , εικονίδια εφαρµογών τα οποία συνεισφέρουν ένα σταθερό ποσό απώλειας ενέργειας από την µπαταρία . Είναι συνιστώσες που δεν µπορούµε να τις αλλάξουµε . Επίσης , στην οθόνη απεικονίζονται πληροφορίες όπως ηµεροµηνία /ώρα , καθώς και εικονίδια που σχετίζονται µε την ποσοστό της υπολοιπόµενης µπαταρίας , την ισχύ του σήµατος του δικτύου κ.α. τα οποία συνεισφέρουν στην απώλεια ενέργειας από την µπαταρία .

Η εφαρµογή δίνει την δυνατότητα στο χρήστη να επεξεργαστεί την φωτεινότητα της εικόνας για διάφορες τιµές contrast και εν τέλει να µειώσει την ενέργεια προβολής της από την οθόνη της κινητής συσκευής . Αυτό γίνεται µε απώτερο στόχο την αύξηση της διάρκειας ζωής της µπαταρίας . Για την εγκατάσταση της θα πρέπει να µεταβούµε στο µενού Ρυθµίσεις της συσκευής , στην ενότητα Ασφάλεια και να επιτρέψουµε την εγκατάσταση εφαρµογών εκτός του Google Play. Ακολούθως αντιγράφουµε το .apk της εφρµογής στην εξωτερική µνήµη της συσκευής και µέσω του Installer της συσκευής την εγκαθιστούµε γρήγορα και εύκολα . Επιπλέον , στο αρχείο build.gradle της εφαρµογής πρέπει να γίνει απαραιτήτως ρύθµιση των ακόλουθων παραµέτρων σχετικά µε το SDK που θα καθορίσουν την εκτέλεση και εγκατάσταση ( συµβατότητα ) της εφαρµογής από ποικίλες συσκευές µε διαφορετικές εκδόσεις του λειτουργικού συστήµατος Android. Οι ρυθµίσεις µας είναι οι ακόλουθες :

compileSdkVersion 19 buildToolsVersion '19.1.0' minSdkVersion 8 targetSdkVersion 19

77

Κεφάλαιο 4: Συµπεράσµατα και Μελλοντικές Κατευθύνσεις

Κεφάλαιο 4: Συµπεράσµατα και Μελλοντικές Κατευθύνσεις 4.1 Συµπεράσµατα

Ο αλγόριθµος CBCS που χρησιµοποιούµε επεξεργάζεται µε γραµµικό τρόπο κάθε στοιχείο φωτεινότητας της εικόνας ξεχωριστά . Η επεξεργασία επιλέγουµε να γίνεται στο χρωµατικό σύστηµα YCbCr για πολύ συγεκριµένους λόγους . To YCbCr [14], [15] είναι µια οικογένεια χρωµατικών συστηµάτων που κοινά χρησιµοποιείται για να αναπαραστήσει ψηφιακά εικόνες και βίντεο σε ψηφιακά φωτογραφικά συστήµατα . Η απλότητα του µετασχηµατισµού και ο άµεσος διαχωρισµός της φωτεινότητας από τις χρωµατικές συνιστώσες καθιστά αυτό τον χρωµατικό χώρο ελκυστικό . Όταν µια still εικόνα στο RGB χρωµατικό σύστηµα προετοιµάζεται για κωδικοποίηση υπό το JPEG σύστηµα κωδικοποίησης και συµπίεσης , µετασχηµατίζεται στο χρωµατικό σύστηµα YCbCr. Σε αυτό τον χρωµατικό χώρο η πληροφορία της φωτεινότητας αποθηκεύεται στην συνιστώσα Y.

Ο αλγόριθµος που παρουσιάζουµε µπορεί να επεξεργαστεί οποιοδήποτε τύπο εικόνας JPEG, PNG, GIF . Ωστόσο , ένας ακόµα λόγος , τον οποίο αναλύσαµε λεπτοµερώς στο πρώτο κεφάλαιο και που µας οδήγησε στην επιλογή του συγκεκριµένου χρωµατικού συστήµατος , είναι το γεγονός ότι αποτελεί µέρος του JPEG [28] προτύπου . Έχει αποδειχθεί πιο ενεργειακά αποδοτικό µεταξύ άλλων συχνά χρησιµοποιούµενων και συνεπώς η ιδέα µας µπορεί να δηµιουργήσει ακόµα πιο ενεργειακά φιλικές JPEG εικόνες .

Η χρησιµοποιούµενη µέθοδος αν και µπορεί να επιτύχει σηµαντική εξοικονόµηση ενέργειας σύµφνωνα µε την πειραµατική αξιολόγηση , αυτό το ενεργειακό κέρδος έχει ένα τίµηµα στην ποιότητα της προκύπτουσα εικόνας η οποία εµφανίζεται αρκετά σκοτεινή δεδοµένου ότι ο αλγόριθµος επιδρά στην φωτεινότητα των εικονοστοιχείων . Η βέλτιστη επιλογή των παραµέτρων a,b δεν είναι αυτή που επιτυγχάνει µόνο την χαµηλότερη κατανάλωση ενέργειας αλλά αυτή που ταυτοχρόνως διατηρεί την ποιότητα της απεικόνισης σε αποδεκτά επίπεδα .

78

Κεφάλαιο 4: Συµπεράσµατα και Μελλοντικές Κατευθύνσεις

4.2 Μελλοντικές Κατευθύνσεις

Η εφαρµογή της πρότασης µας θα µπορούσε ενδεχοµένως να αφορά όχι µόνο τα υποψήφια wallpapers στην συσκευή ενός χρήστη αλλά και γενικά JPEG εικόνες κάνοντας αυτές ακόµα πιο ενεργειακά αποδοτικές µειώνοντας την φωτεινότητα τους . Ένα θετικό στοιχείο σε αυτή την περίπτωση είναι ότι οι εικόνες αυτές θα µπορούν να αποτελέσουν µέρος γνωστών και συχνά χρησιµοποιούµενων ιστοσελίδων , οπότε ενδεχοµένως να επιτύχουµε εξοικονόµηση ενέργειας και από την πλευρά του browser ο οποίος όπως παρουσιάσαµε παραπάνω δαπανά σηµαντικό ποσό από την συνολική ενέργεια του συστήµατος και επιβραδύνει τη διάρκεια ζωής της µπαταρίας . Η παραπάνω επεξεργασία θα µπορούσε ίσως να αφορά frames video κωδικοποιηµένου σύµφωνα µε τα πρότυπα MPEG1, MPEG2, MPEG4 µε σκοπό την µείωση της ενέργειας απεικόνισης κατά την αναπαραγωγή του . Αυτό θεωρούµε ότι αποτελεί ένα ανοιχτό ζήτηµα το οποίο αξίζει να ελεγχθεί .

Οι περισσότερες προσεγγίσεις όπως είδαµε ασχολούνται κυρίως µε τις ασύρµατες διεπαφές και γενικότερα τους αισθητήρες της συσκευής στην προσπάθεια να διαχειριστούν το θέµα της εξοικονόµησης ενέργειας . Η πρότασή µας θα µπορούσαµε να πούµε ότι αποτελεί µία διαφορετική προσέγγιση στο θέµα της εξοικονόµησης ενέργειας στις σύγχρονες κινητές συσκευές .

79

Παράρτηµα

Παράρτηµα

Κώδικας Εφαρµογής

AndroidManifest.xml menu_list.xml

activity_main.xml

82

Παράρτηµα

android :layout_width= "match_parent" android :layout_height= "match_parent" android :paddingLeft= "@dimen/activity_horizontal_margin" android :paddingRight= "@dimen/activity_horizontal_margin" android :paddingTop= "@dimen/activity_vertical_margin" android :paddingBottom= "@dimen/activity_vertical_margin" tools :context= ".MainActivity" android :background= "@android:color/holo_blue_light" >