Social group formation with mobile cloud services

1 Introduction world for document sharing. Similarly, thousands Social networks [7] have become very popular these days, with millions of users, from several countries and with different backgrounds and interests. Facebook [14] and Twitter [49] are the most popular social networks of them, with more than 800 million and 200 million active users, respectively. This number of people present in the network is a good opportunity to create professional and business connections around the world. People with common interests in the social network can take advantage of the social network benefits like public recognition, creation of relationships, referrals, and manage the social capital. Social groups [36] also result in sharing and collaborative relationships between the members. For example, a group of people working in the same research topic can collaborate with each other sharing resources, ideas, and knowledge, etc. This helps in achieving their common goals faster. At the same time, the cloud computing [4] domain has become quite popular and has led to new business models and application opportunities such as intensive batch processing applications for business analytics, human activity recognition, collaborative tools, among others. Cloud computing is a style of computing in which, typically, resources scalable on demand are provided ―as a service (aaS)‖ over the Internet to the users who need not have knowledge of, expertise in, or control over the cloud infrastructure that sup- ports them. The provisioning of cloud services occurs at the Infrastructural level (IaaS) or Platform level (PaaS) or at the Software level (SaaS). The vast number of services provided in the cloud has become a commodity in people’s day-to-day life. For instance, collaborative tools such as Google Docs and Zoho are extensively being used by millions of people around the of pictures are being uploaded daily to cloud services such as Picasa or Flickr for sharing and storing media files. Like- wise, services such as Google Maps and Bingo Maps enable the provisioning of location-based services. However, a cloud service usually does not provide a rich functionality by its own. Several services are to be combined with each other to add a significant value for the user, pushing the mash-up idea. For example, by blending Google Maps and SoundCloud, a media file sharing service; it is possible to visualize the songs and tracks uploaded by a user in the geographical location where those media files were recorded/uploaded. Furthermore, the development of more complex and richer applications like foursquare [21] is only possible by blending several rich services like social network, locationbased services, media files storage, IaaS. To sum up, a mashup application is one that blends or mixes two or more services into a single application, combining data, presentation, and functionality, with the aim of enriching its functionality, improving the user experience, and adding more value for the user. Finally, the development of a mash-up application implies the easy and fast integration of different APIs and data sources into a single application. Meanwhile, the mobile computing domain also has advanced rapidly and enabled the new generation of cloudbased and context-aware mobile applications. Consequently, Clouds are looking forward to the mobile domain, having their expectations focused in the idea of fostering the access and consumption of cloud services at the different levels from mobile devices. Nowadays, mobile devices are equipped with embedded sensors and input devices such as cameras, GPS, accelerometer, magnetic

1

). which uses data from Google Analytics and linear programming techniques in the process. an invitation to be part of a social group on facebook. it is possible to apply these technologies in other scenarios such as the social group formation. and in transmission (higher data transmission rates achieved with 3G and 4G technologies and ubiquity of Wi-Fi networks) have contributed toward having higher mobile penetration and better services provided to the customers. However. with the mass amount of pictures present in the social network and media sharing services in the cloud. which analyses the data collected by the accelerometer. For example. Applications from such Mobile Cloud Computing domain usually combine cloud-based services with basic context- capabilities are included in most of the new operating systems of mobiles phones. Improvements on hardware (embedded sensors. Such a mobile cloud benefits applications from several domains like context-aware.resource management application. in software (more numerous and more sophisticated applications due to the release of iPhone [3] and Android [2] platforms). and Sect. four. touch screen.sensor. 7 concludes the paper with future research directions. a training repository of identified faces is needed and it demands huge amounts of processing power for the detection and recognition of a specific person in the repository. social networks. awareness. Section 4 discusses the architectural and technological choices along with our developed Mobile Cloud Middleware (MCM) [19]. power consumption. productivity tools. Out of them. among others. these new capabilities can be combined also with other services and mash-up applications giving place to mobile mash-up applications. uses the SaaS of face.mine the user’s location and provide information about the services around. The rest of the paper is organized as follows. Section 3 discusses the cloud services employed in the realization of the application. Section 2 describes the developed application in detail. face detection. Similarly. to each recognized person. these new applications that rely on the cloud are only possible due to the recent enhancements in mobile devices. for identifying the activities. Decaf [51]. Face detection and facial recognition are typically used in security systems for identifying people among the crowd. This has lead to the Mobile Cloud Computing (MCC) domain. gesture recognition. Moreover. A mobile mash-up application not only blends into a single application several services but also uses the data gathered by embedded sensors and devices in order to enrich the mobile application. better ergonomic design. functionalities such as speech recognition. Section 5 provides a detailed analysis of the application. To bring the benefits from these different domains together. are clear examples of mobile applications accessing cloud services. etc. and Bakabs [37]. the facial recognition process requires more time and resources. Section 6 discusses the related work. and face detection among others.com [15] to recognize people from the media files. Even though face detection can be done in the device. For facial recognition. Zompopo [43] is a human activity recognition application. a cloud. and facial recognition 2 . and with the increased hardware and software capabilities of the mobile devices. For example. and sends. Android in its version 4 included Face Unlock and gesture detection features. However. from the mobile devices.based cluster estimation application based on load. The application is explained in detail with the technological and architectural choices. memory. we tried to build an Android application that aids in forming social groups of common interest.square uses the GPS sensor embedded in the device to deter. a cloud. The developed CroudSTag (Social tagging crowd on cloud) application takes a set of media files (pictures and videos probably taken by the mobile device itself) from the cloud. biometrics. with screenshots.

1 CroudSTag’s application flow Figure 1 shows the screenshots of the CroudSTag usage scenario. Once the image/video is saved in the cloud. The media files are probably taken from his/her mobile itself and are stored on the cloud. the user can upload pictures and videos to the cloud and store them in Amazon Simple Storage Services (S3) [1]. three buttons are shown: facebook Login. something like alumni. CroudSTag camera embedded in the device is used to take the media content (screenshot 2)and when the user is finished and taps the save button. and Take Video. When the user starts the application. This authentication token is also needed to send the invitation to people.2 CroudSTag: application description and screenshots CroudSTag is a mobile application developed for Android devices. which is used for accessing the facebook graph and also for accessing the user’s tags during the facial recognition process. and upload the file to S3. he/she may upload them to public clouds like S3 or GoGrid [23]. as shown in the top cycle of the figure. The researcher later wants to create and keep connections with his acquaintances on the social network. For example. to join the social group. respectively. as the researcher may store the pictures in his private cloud (something like our SciCloud [42]. He/she also wants to group them according to specific interests and would like to follow the groups directly from his/her mobile phone. consider a researcher who attends conferences around the world and has a set of media content (pictures and video files) of the people with whom he/she had interacted at the event. which is an extension of the original CroudSTag application presented in our previous work [41]. with the aim of aiding in the social group formation by means of facial recognition technologies and MapReduce [11]video processing. a private cloud based on Eucalyptus technology with Walrus storage) when in Europe and while travelling through United States or Japan. 1 Screenshots of the CroudSTag usage scenario 3 . as shown in screenshot 1. the application comes back to the main menu from where the user can take a new video/picture or start the social group formation process. The scenario can also be envisioned with any other type of the event or community that wants to keep its members in contact. recognizes the people who appear in media content such as pictures or videos and joins them together into a social group. The Fig. 2. The facebook login goes directly to facebook and authenticates the user getting an authorization token. The Take Picture and Take Video buttons are used to take a picture/video. Take Picture. With the help of CroudSTag application. Multiple clouds are considered for keeping the files. he/she is asked to select the cloud provider where the files are going to be stored (screenshot 3).

Once the user taps the button. asynchronously to the device. Once the user is logged-in. Each invitation is sent in the form of a private message containing a link to accept the invitation and join the social group in the facebook (screenshot 8). who decides whom to send the invitation to join the social group in facebook. the device is free to start other applications or a new process at MCM. Face recognition is performed based on SaaS from face. the application displays it to the user (screenshot 7). the application enables a new button ―CroudSTag‖ on the main screen (screenshot 5). friends. As already mentioned.1 3 Cloud services employed in the application: CroudSTag’s functionality is based on cloud services at end for end for (image) images F or I d ent i f icat i on ⇐ em pt y _li st {Pre-Processing Step} for all i mage ∈ f ol d er do i mage ⇐ smoot h (image) gr ay Scal e I mage ⇐ tr ans f or m T oGr ay Scale(image) gr ay Scal e I mage⇐ eq ui l i ze I mage H i st ogr am (gr ay Scal e I mage) f aces ⇐ d et ect O b j ect s ( gr ay Scal e I mage) if f aces . and MCM is discussed in detail in Sect.com and facebook ) levels. The device sends the Mobile Cloud Middleware (MCM) (discussed in detail in Sect. Right after the request is received by MCM. Moreover. 4. The facial recognition and identification process employed in the application is described in the Algorithm 1 Algorithm 1:Facial Recognition and Identification Require: f ol d er. The social group formation process starts with facebook login. the social group formation process is initiated and he/she is asked to select the cloud provider where the media files to be processed are stored (screenshot 6). The entire scenario is illustrated in detail in Fig .vide a complex and rich functionality to the user in an entirely transparent process. it sends the list of people recognized.com.l engt h > 0 Ensure: l i st of f acebook users i dentified {Encoding Step} for all v id eo ∈ f ol d er do section. 4) a request for the social group formation service along with the authorization token from facebook and the folder and cloud where the media files are. CroudSTag benefits from the composition of several cloud services that are combined together to pro. as explained in above paragraph (screenshot 4). The invitees will later join the social group based on their interests. and tags).ad d (i mage) end if end for persons ⇐ em pt y _li st 4 . it sends an acknowledgment back to the mobile.l engt h > 0 then images F or I d ent i f icat i on . The service is explained in detail in the next f ol d er. the facebook authorization token is required by the facial recognition process in order to access the user’s content (pictures. Then.Infrastructure (Amazon Elastic MapReduce. Amazon S3. When MCM finishes with the facial recognition process. Once this list is received. The media content stored in the cloud is used to detect and recognize user’s acquaintances and contact them in facebook. CroudSTag relies on three different cloud services that are combined with each other to create a social group out of the people who can be identified in media files.ad d encod ed _i mages ⇐ encod eV i d eo I nt o I mages (v id eo) for all i mage ∈ encod edi mages do Sci-Cloud Walrus storage) and Software (face. To be clear. notifying that the process has been started.

Map and Reduce. an open source utility for video processing. 2 OpenCV libraries for facial detection—image powered by face.a list of key– value pairs. Afterward. image> in such a way that each reducer will receive a subset of pictures to process. selecting only those images that are good candidates for the face detection and identification process. The developed opencv-python script takes as input an image and returns a list of square coordinates where each square frames a face. v al ue)] 5 . aggregates the list of values based on a user specified function.com the key and is divided between different reduce tasks. all the images are pre-processed with the aim of removing the noise. The general idea of MapReduce is simple. the Open Source Computer Vision (OpenCV) [8] libraries for Python have been used. this pre-processing step can be very timeconsuming as the encoding process generates a considerable number of images from each video file (≈5. v al ue)] r ed uce(key . ma p (key . It has been extensively used for facial detection. It provides several libraries mainly in C but also for Python programming language. Fig.com. robotics. [v al ue]) ⇒ [(key . each video file is encoded into several images using ffmpeg [16]. Input to a MapReduce application is In CroudSTag. and the application core consist of {Facial Identification Step} for all i mage ∈ images F or I d ent i f icat i on do per sons I n I mage ⇐ F aci al I d enti f i cati on Saa S (image) per sons . Map method processes each key–value pair in the input list separately and outputs the result as a key–value pair. and the opencv script needs to be run for each image. which is detected in the picture. a MapReduce [11] algorithm running at Amazon Elastic MapReduce is considered. An image with at least one face detected in it is considered as a good candidate for the identification process in face. all the images without the faces are discarded from further processing.000 images from a 3 min high-definition video). However.ad d ( per sons I n I mage) end for J S O N Res ponse ⇐ encod eT o J S O N ( per sons ) two methods. MapReduce is based on a typical divide and conquer parallel computing model. and outputs one or more key-value pairs. For tackling this problem. emitting for each picture a key–value pair of <batch id. So. v al ue) ⇒ [(key . OpenCV is a library of programming functions for realtime computer vision created by Intel. In order to detect a face in an image. Each reduce task gets a key and a list of all values assigned to this key as an input. The output of the Map method is grouped by In the first service. gesture recognition. the map function shown by the Algorithm 2 divides the entire set of pictures into subsets. Figure 2 illustrates the face detection process using opencv libraries. motion tracking among other areas.

these private namespaces need to be tagged and The second cloud service of the CroudSTag application is at the SaaS level. Face.com. The aim of the application is to find pictures of a person in the network. mouth.Further. and tagging are provided through its REST API [17]. The combination of face information and facebook information is considered as an identified person. face. (3) CelebrityFinder that scans pictures in Twitter looking for celebrities that have posted publicly [13].com released its API and officially Algorithm 3 Reduce function Require: bat ch Require: i mages for all i mage ∈ i mages do f aces ⇐ d et ect F aces (image) if f aces . the facebook id and the name corresponding to such face. called namespaces. The community also has developed client libraries for Python. The recognition process is performed on the public content and the content owned by the user. and Ruby on Rails. Algorithm 2 Map function Require: f ol d er Require: f ol d er. C#. Further. which uses the third-party services from face.com uses these elements to match faces detected in the pictures with the faces previously tagged in facebook. Face. nose. all the matches are returned as a list where each item contains the face information (position for eyes. In May 2010. Flash Action Script.com takes as inputs a set of image files and first recognizes faces detecting position of eyes. However. It is also possible to have private sets of photographs and tags. etc.l engt h > 0 then key pai r ⇐< image . the two most popular social networks with billions of photographs in their repositories. This batch processing is a more efficient way to tag pictures from existing albums. Face. mouth. (2) PhotoTagger that lets people choose albums to scan for faces grouping the people recognized in batches called screen shots.face.l engt h > 0 Require: bat ch Si ze i ⇐0 for all i mage ∈ f ol d er do bat ch ⇐ i /bat ch Si ze key pai r ⇐< bat ch . It offers three basic solutions for facial detection: (1) PhotoFinder that scans public photographs in the network and suggests tags for the photographs which are currently un-tagged. Server—http.).com is a technology company operating in the face recognition domain and provides several SaaS from the cloud. image>.com complies with facebook and Twitter security policies and thus can use the credentials of the social networks within its recognition process. PhotoTagger suggests tags for the people present in the screen shots. Otherwise. the reducer emits a key–value pair <image name. the image is discarded and no key–value pair is emitted. responsible for the face detection and people identification in the social network. Face.com tags and recognizes users from facebook and Twitter.com and facebook. The reducer shown in Algorithm 3 goes through the entire set of images trying to detect faces using the python-opencv libraries described above. If an image contains at least one face.name . The services are provided for free but with quota limitations. Later. among other elements in the 6 . Java. recognition. Finally. i mage > emi t (key pair ) end if end for supports languages such as PHP and JavaScript. The services for detection. the framework groups together all the key– value pairs with the same key value and passes the set to the reducer function.api. i mage > emi t (key pai r ) i ⇐ i +1 end for picture. face. nose.

etc. and resource consumption at the time of running in the device. if the computation offloading requires long waiting time for getting a response back. and thus reduce the number of people who can be recognized and also decrease the accuracy of the results. Hence. and pages) and connections between each other. Cloud providers offer proprietary APIs and routines to consume the services. we have designed and developed a Mobile Cloud Middleware (MCM). The Graph is used to discover the relationship of one object with other objects. several cloud services are considered in the CroudSTag application. 4 Generic middleware for mobile cloud services invocation While the services employed for the CroudSTag application are interesting. Moreover. The CroudSTag application also uses facebook services to create the groups. for example. cloud interoperability is not possible and when a mobile mash-up application is to be created. The services are bound by numerous constraints like cloud provider’s technology choices.com) is resource consuming for a mobile phone. The JavaScript and PHP SDKs are available for web content. which are generated in the MapReduce job. However. and Dialogs. and the iOS and Android SDKs are available for mobile applications. 7 . the native Amazon API and jets3t [29] API. can be retrieved through the Graph API. it cannot make another application call from the user. application uses face. Facebook also provides several SDKs [14] to develop applications. likes. etc. Consequently. as already explained. groups. are used. while the handset is waiting for an answer.trained. there is a basic service to retrieve the images. to integrate the core facebook platform technologies such as social plug-ins. For accessing the storage services in Amazon S3 and Walrus from SciCloud [42]. To counter most of these problems in general.com since the service is free to access and provides more advanced features that are convenient in the context of a social networking. events. the direct invocation of a cloud service (such as face.) and jetS3t API [29] (Amazon S3 [1] and Eucalyptus [35]). photographs. This is most often not in the cloud provider’s agenda and it may take some time before the open source community comes up with compatible API for the targeted mobile platform. footprint at the time to be installed.com for identifying the individuals. Also. albums. Most often. Every object inside facebook has a unique ID and its information can be accessed through the facebook public URL. the operating system of the device tends to get stuck. photos. We also have developed a face recognition service that can be used for analyzing the set of pictures that are stored in our SciCloud. we have decided using face. The Graph API is the simple view to facebook objects (people. such waiting time is not tolerable for the user and mobile application usability perspective. The CroudSTag service of Walrus as it was originally meant from the community for accessing Amazon S3 services. the two storage services considered in CroudSTag.book Dialogs. it is necessary to rely on a middleware solution for getting the results back asynchronously. jets3t needs slight modification for handling the storage Therefore.. tags. respectively. Another big problem associated with such a usage is that the cloud service provider has to supply his API specific to several mobile platforms like Android or iOS. Facebook Applications are the channel provided by facebook. the Graph API. platform restrictions. events. from the cloud storage to the MCM. Java API. Moreover. facebook (Open Graph. notes. the mobile is not able to execute concurrent tasks. it has to be developed for a specific cloud provider increasing the application complexity at the time to be created. In between the video processing and facial recognition steps. Relationships such as friends. The images are later sent to face. These dialogs provide the interface to post messages in user’s walls send friend requests and application requests. which provide a consistent interface to display dialogs to users.

the interoperability API engine verifies the service configuration for selecting the suitable API. etc. clouds credentials.vices. after all the cloud services are finished.cessed by the Interoperability API engine. MCM Manager encapsulates the API and the routine in an adapter for performing the transactions and accessing the SaaS. which receives the request.) and the service configuration requested (list of ser.MCM is introduced as an intermediary between the mobile phones and the clouds in the mobile cloud service invocation cycle.) in a session space. The transportation handler can receive the requests based on several protocols like the hypertext transfer protocol (HTTP) [18] or the extensible messaging and presence protocol (XMPP) [38]. it connects to the TP Handler component of the middleware. cloud providers. which selects the suitable cloud API and creates a unique adapter that ensures the transactional process with the cloud. 3. based on the application design. types of transactions. When the request is forwarded to the MCM Manager. MCM Manager uses the asynchronous notification feature to push the response back to the handset. A transactional space is created for exchanging data between the clouds. etc. The adapter keeps the connection alive between MCM and the cloud and monitors the status of each task running within the cloud. respectively. In case of the CroudSTag application. When an application tries to connect to a basic cloud service. again and again. The result of each cloud transaction is sent back to the handset in a JSON (JavaScript Object Notation) [30] format. Later. the final result is sent just once. depending on the cloud vendor. Once the interoperability API engine decides which API set it is going to use. The architecture is shown in Fig. The identifier is used for handling different requests from multiple mobile devices and for sending the notification back when the process running in the cloud is finished. When all the cloud services are completed. MCM fosters mobile platform heterogeneity and the combination of different cloud services into a mobile mash-up application. Fig. The aim of the transactional space is to avoid offloading the same information from the mobile. Finally. The servlets contain the set of functions for the consumption of the cloud services. 3 Architecture of the Mobile Cloud Middleware 8 . it first creates a session assigning a unique identifier for saving the system configuration of the handset (OS. The request is then pro. the MCM Manager requests for the specific routines from the Adapter Servlets.

There have been 5 Related work Extensive research has been conducted in the computer vision domain during the past two decades. which is later sent to the device. the enhancements in the facial recognition techniques have improved the accuracy and the rate of detection. However. However. However. characteristics and tries to identify a person by comparing his/her face characteristics to those which are already known. which claims to work in near-real-time. Some manufactures such as Sony Ericsson incorporated the feature in its model X10 [40] the ―Recognizer‖ application. These studies have achieved huge improvements in the generation of algorithms and techniques for facial detection and recognition.. The study developed a Mobile Host. these approaches focus only in the detection and recognition. Likewise.com (SaaS) for the pruning and recognition phases. The framework describes a face as a two-dimension set of several attempts to integrate the facial recognition capabilities to mobile devices. a synchronicity is added to the MCM by implementing the Android Cloud to Device Messaging Framework (AC2DM) [24] and the Apple Push Notification Services (APNS) protocols for Android and iOS. and eventually overloads the storage resources of the phone with the pictures taken. To tackle this problem. J2ME. Generally. MCM also has support for the Mobile Host [45] concept. respectively. Similarly. It stores the pictures locally in the device and only recognizes people who are present in the contacts list and have a picture associated. this puts a lot of load on the mobile networks. they happen to be resource and time demanding and thus are not suitable for resource constrained devices like mobile phones. However. AC2DM is a lightweight mechanism that lets to push a message into a queue of a third-party notification service. [10] utilizes the cloud capabilities for creating an access security framework by means of facial recognition. This method has been broadly used in applications that rely in the detection and recognition of people using computer vision facilities. and Android platforms. it lacked the opportunity to search people in the social networks or take advantage of cloud technologies. Liu et al. which can be used in providing web services from the smart phones. the system wakes up the application via Intent Broadcast. work. CroudSTag aims the social group formation of people by processing media files via facial recognition. For instance. Forwarding messages to device happens through constantly open IP connection. they are mostly applied in biometrics and security domains like in Chang et al. Alternatively. 9 . and they lack the social group formation capabilities present in CroudSTag. This application enables the user to take a picture using the camera and recognize people present in the picture. CroudSTag relies on Amazon Elastic MapReduce (IaaS) and face. usually for authentication purposes. such applications usually require to be trained with large datasets demanding huge amount of resources and time. Instead we can make the mobile device a service provider. APNS messages are sent through binary interface that uses streaming TCP socket design. In contrast. Similarly. passing the raw message data received straight to the CroudSTag application. Chang et al. When the smart phone acts as a service provider. However. Facial recognition technologies [12] are one of the most promising features for the mobile users. focusing in face detection and facial recognition. the mobile can check for the status of the service regularly by contacting the MCM. [32] proposed a fast face tracking using parallel particle filter algorithm that also relies in the MapReduce framework. Turk and Pentland [48] developed a framework for the detection and identification of human faces. the mobile cloud service response can be sent directly to the device. Once the message is received. which was studied in mobile web service provisioning project. The current implementations of the Mobile Host are available for Personal Java. Despite.

for the consumption of web services (WS) [9] in a mobile mash-up WS application.com.com only provides web or desktop solutions. Ijiri et al. Face. Similarly. [26] proposes an authentication mechanism for authenticating users by means of facial recognition with the use of mobile devices. the facial recognition service is supported by face. this application has not been released and has some problems. which allows detecting people from one picture taken with the camera and having access to his facebook recent activity and information. cloud computing.com is currently looking for commercial applications. [28] try to solve the security and usability issues that arise when the mobile devices store private information from the user such as payments. We think CroudSTag may be a possible candidate. The specific role of GRID is to offer a common and secure infrastructure for managing the virtual cluster of the cloud through the use of mobile agents. therefore. It handles creating user profiles from the context of the mobile phone. the recognition process runs entirely in the device that might negatively impact the performance of the device as well as battery usage.Furthermore. storing the system configuration (pre-defined set of WS which can be consumed from the handset) and the service configuration (information needed for constructing a request and combining services). we have observed their middleware and the API support to be tightly coupled. Currently. personal pictures. standing between the mobile and the cloud. their purpose is distant from CroudSTag’s aim. Agora [34] is another middleware solution that is in the development. back accounts and credit cards. which involves the use of a middleware. the client has to wait for MCCM to resolve each request which is not suitable for time consuming data intensive tasks. Agents introduce features that pro. Even though. it is possible to create a facebook album and upload the tagged pictures. there is no dearth for resources. Besides. the social group formation by means of composition of cloud services at IaaS and SaaS level is characteristic that truly distinguishes CroudSTag from other applications. only the desktop application in beta version has been released that enables to detect faces in photographs and tries to match them with tags in the user’s facebook profile. Middleware approaches similar to our MCM have also been addressed in the literature.vide the users a simple way for configuring virtual clusters. It offers a set of solutions to provide facial recognition capabilities and intends to provide the solutions for both stand. and mobile agents. it uses the facial recognition only for authentication and the process occurs locally in the mobile device. the communication between the client and MCCM happens to be synchronous. Nevertheless. which use its face recognition API in order to make incursion in the mobile market. Ijiri’s and Hadid’s work have proved to be effective. Moreover. Mobile Cloud Computing Middleware (MCCM) [52] is a project. For example. In addition. They propose an authentication mechanism that uses the camera embedded in the device for taking a picture of the user that is analyzed with the help of facial recognition techniques. Viewdle [50] is another promising technology to include cloud technologies and facial recognition in mobile devices. for managing existing resources in the Internet Cloud. and local binary pattern (LBP) approach for face authentication. It considers Haar-like [31] features with Ad-aBoost [22] for face and eye detection. respectively. which will enable new large-scale mobile cluster applications and will use mobile devices as nodes of 10 . Viewdle published in its website a demo of the mobile application.alone and mobile platforms. Since most of the recognition process is performed on cloud. and during the recognition process. Hadid et al. Face. Cloud agency [5] is another solution that aims to integrate GRID [6]. The pictures have to be stored in the computer. The Table 1 summarized the related work in terms of using facial recognition. In our CroudSTag application. However.

The recognition is done locally in the device and it uses the NIR embedded in the device 2009 Liu et al.scale cloud computing infrastructure. Table 1 Related work for facial recognition and face detection in cloud and mobile computing Year Author Feature 1991. MCM mainly enables interoperability across multiple cloud architectures fostering the provisioning of composed cloud services.a large. μ Cloud proposes a facial recognition application. in near real-time recognition by means of eigenvectors 1994 Samaria and Harter [39] Proposes the parameterization of a stochastic model for human face identification by means of continuous density Hidden Markov Models 2006 Ijiri et al. MCM fosters the creation of cloud-based mobile applications. Therefore. In addition. the work does not clarify how the framework scales under heavy workloads neither how it handles the authentication across the different cloud services. we could not find any concrete implementations. histogram. updates until 2002 Turk and Pentland [48] Introduces a detection and identification of human faces. [26] Proposes a mechanism for face and eye detection for person authentication in mobile phones. March et al. [10] Proposes an access security system on cloud computing implemented in Hadoop system for mobile devices 2011 March et al. [33] introduces μ Cloud. which are enriched with the benefits of the cloud. [27] Introduces a face recognition method based on near-infrared (NIR) light using mobile phones. Implements an authentication method using the camera embedded in the device 2007 Hadid et al. edge orientation and wavelet features) face tracking algorithm implemented in MapReduce 2011 Chang et al. [32] Proposes a fast face tracking using parallel particle filter algorithm uses multi-cue (color. However. social networks. [41] Proposes a cloud-based mobile application that aims the social group formation by means of composition of cloud services such as facial recognition. Agora will enable the devices to work together seamlessly. Uses Haar-like features. and MapReduce 11 . a framework for building rich mobile applications based on composition of cloud services. However. [28] Proposes a security management system for mobile devices by face recognition. it is restricted to detect faces and compare them against a reduced repository of known faces. Ad-aBoost and local binary Patter for authentication of users using the camera embedded in the Devices 2007 Han et al. however. MCM allows building lighter and more robust applications for mobile devices since it is capable to manage transactions with multiple clouds in a transparent way for the developer who only needs to deal with a unique interface (MCM) instead of several provider-specific APIs. [33] Proposes a face recognition application by means of composition of basic cloud services 2011 Srirama et al. In addition.

The application takes a set of media files (actually collected by the phone itself) from the cloud and uses the cloud services of Amazon and SaaS of face. J Comput Mediat Commun 13:210– 230.android. References 1. The paper explained the application with detailed architectural and technological choices. a berkeley view of cloud computing. an invitation to be part of a social group and it uses facebook for the social group creation. CroudSTag is one such application built for the Android devices. Android. Joining the technologies together. and our future research will try to integrate the MCM with the MWSMF.00393. Tsai H.puting–making the global infrastructure a reality. Fox G. MCM will have the similar QoS as that of MWSMF.ates. his.1083-6101. Berman F.x 8. Kaehler A (2008) Learning OpenCV: computer vision with the OpenCV library. which frees the mobile resources during most of the invocation process. Bradski G. 1st O’Reilly & Associ. Amazon-Amazon Web Services.1111/j. Apple. Checking the scalability of the MCM is also very interesting for us. Android. 7 Conclusions and future research directions Cloud computing and mobile computing domains have advanced rapidly and are the promising technologies for the near future. Berkeley 5. As already mentioned. The applications may also take advantage of huge user bases of the social networks. which are suitable for the people in the social networks. Martino BD. The application also becomes a case study for our MCM. which require resource intensive tasks com. if MCM can be attached to the MWSMF as a component. Sebastopol 10. University of California. Amazon.. Ellison NB (2008) Social network sites: definition. Lin Z. We are also interested in adapting the CroudSTag application to specific application domains and user communities. Inc. However. have realized a mobile web service mediation framework (MWSMF) [46] that helps in offering proper quality of service (QoS) and discovery mechanisms for the services being provided from the smart phones [44]. http://aws.com/ 3. storing the presentations and talks at the conferences in the form of videos. MWSMF is shown to be reasonably scalable [47]. O’Reilly Media. England 7. Chen C (2011) Access security on 12 . Sebastopol 9. and scholarship. Aversa R. http://www. Venticinque S (2010) Cloud agency: a mobile agent based cloud system. increasing their feature richness. Chang B. doi:10. The application then enables the user to send. com/ 2. intelligent and software intensive systems 6. Rak M. keeping track of their versions. The extended application will have support to store the documents. to each recognized person. Armbrust M et al (2009) Above the clouds. Cerami E (2002) Web services essentials. we are in the process of extending the application. such that the application can be used by the researcher for tracking his research from beginning to the end. http://www.apple. IPhone. For example. Boyd DM.2007. where Srirama et al.tory. one can envision several applications. The performance analysis of the application shows that the social groups can be formed with significant ease and reasonable performance latencies on the devices.amazon.com/iphone/ 4. our future research will also try to include the MCM as a component to the MWSMF. and notifying the user about the upcoming conferences and deadlines. Technical report. We are in the process of developing other applications as part of our future research. One feature that really separates it from other approaches is its support for asynchronous push notification. Moreover.com to recognize and identified people out of those files. Hey AJ (2003) Overview of the book: grid of common interests result in sharing and collaboration relationships between the members. The social groups thus formed with people and composed services to be performed and thus utilize clouds and MCM in the process. Wiley Online Library. to support the researcher’s complete publication activities. Inc. our earlier research also involved working with middleware for mobile web services. In: 2010 international conference on complex.

face. Hadid A. First ACM/IEEE international conference on. IEEE. Pietikainen M (2007) Face and eye detection for person authentication in mobile phones. Morgan Kaufmann publishers. In: Mobile data management. pp 77–80 11. gsmarena.org/ 17.html 25.com. Zagorodnov D (2009) The eucalyptus open-source cloudcomputing system. In: Genetic and evo. Paniagua C (2011) A generic middleware framework for handling process intensive hybrid cloud services from mobiles. http://www. Cho DH. jets3t (2010) jetS3t-an open source Java toolkit for Amazon S3 and CloudFront. gogrid.com/ 24. face.com. ICME 2009. Goh G.google.com/htc_desire-3077.org/ 31. Ijiri Y. pp 49–49 29. https://foursquare. face.com/ 22. Kuroda H.json. In: Beliczynski B. 2007.com/ 14. Silven O. Kirchberg M. In: Multimedia and expo. Han S. Dzielinski A. Ph. Frystyk H. Soman S. pp 1302–1305 33. Ribeiro B (eds) Adaptive and natural computing algorithms. Park KR. Forouzan BA (2005) TCP/IP protocol suite.com. Dominik I. 2009. IEEE.D.com 15.1. Wolski R.com/ 16. 2006. Sakuragi M. Srirama SN. ES/android/c2dm/index. Lienhart R. http://ffmpeg. Schapire R (1996) Experiments with a new boosting algorithm. http://www. Maydt J (2002) An extended set of haar-like features for rapid object detection.lutionary computing (ICGEC). Ghemawat S (2008) Mapreduce: simplified data process. Narasimhan P Agora: mobile cloud-computing middleware. Fielding R (2000) Architectural styles and the design of networkbased software architectures. Tang L. facebook.com. pp 440–448 http://code.ing on large clusters. pp 124–131 13 . Fielding R. Masinter L. March V. IEEE. Nurmi D. In: Image processing 2002. http://jets3t. Iwanowski M. Massachusetts. ICDSC’07m. ACM 20. Android Cloud to Device Messaging Framework. Lee B (2011) [mu] cloud: towards a new paradigm of rich mobile applications. http://www. Kim TH (2009) Signal processing.cylab. Grzegorczyk C. In: The 9th international conference on advances in mobile computing and multimedia (MoMM-2011). Gu J. Obertelli G. 2011 fifth international conference on. Youse L.com/intl/esMcGraw-Hill 28. pp I–900 32. Proceedings of 2002 international conference on.facebook. IEEE international conference on. Dean J. pp 87–95. Springer. Sankar KP. JSON. Lee S (2007) Face recognition based on near-infrared light using mobile phone. Mogul J.html 35. JSON. Inc. http:// www. thesis 18. Flores H. IEEE. GoGrid.php 26.cmu. Gettys J. Forouzan Networking. Lao S (2006) Security management for mobile devices by face recognition. Freund Y. URL last visited on 3th Dec 2010 30. Liu K.amazonaws. Lecture notes in computer science. Foursquare. vol 4432. Gsm Arena Inc (2011) Gsm Arena-HTC Desire. vol 1. http://www. Technical report. In: 9th IEEE/ACM international symposium on cluster computing and the grid (CCGRID ’09). Foursquare. Leonardi E. Commun ACM 51(1):107–113 12. Leach P. GoGrid-Complex Infrastructure Made Easy. MDM 2006. In: Distributed smart cameras. Gu Y. Park HA.com. http://face. http://face. Heikkila J.s3. Procedia Comput Sci 5:618–624 34. Inc. facebook. Berners-Lee T (1999) Hypertext transfer protocol–http/1. Liu W (2009) Fast face tracking using parallel particle filter algorithm. image processing and pattern recognition 13. Li S. Berlin. In: Machine learning-international workshop then conference.cloud computing implemented in hadoop system. FFmpeg. RFC 2616 19. Google code labs. 7th international conference on. New York 21. Wang L. pp 101–108 27. pp 148–156 23. face. IEEE. Kong BH.edu/research/projects/2010/agora.

14 .

15 .

Sign up to vote on this title
UsefulNot useful