WO2015036648A1 - An apparatus for processing images and associated methods - Google Patents

An apparatus for processing images and associated methods Download PDF

Info

Publication number
WO2015036648A1
WO2015036648A1 PCT/FI2013/050873 FI2013050873W WO2015036648A1 WO 2015036648 A1 WO2015036648 A1 WO 2015036648A1 FI 2013050873 W FI2013050873 W FI 2013050873W WO 2015036648 A1 WO2015036648 A1 WO 2015036648A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
detail
smaller
copies
original electronic
Prior art date
Application number
PCT/FI2013/050873
Other languages
French (fr)
Inventor
Roope Rainisto
Original Assignee
Nokia Technologies Oy
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nokia Technologies Oy filed Critical Nokia Technologies Oy
Priority to PCT/FI2013/050873 priority Critical patent/WO2015036648A1/en
Publication of WO2015036648A1 publication Critical patent/WO2015036648A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting

Definitions

  • AN APPARATUS FOR PROCESSING IMAGES AND ASSOCIATED METHODS Technical Field The present disclosure relates to user interfaces and image processing, associated methods, computer programs and apparatus. Certain disclosed examples may relate to portable electronic devices, for example so-called hand-portable electronic devices which may be hand-held in use (although they may be placed in a cradle in use). Such hand- portable electronic devices include so-called Personal Digital Assistants (PDAs), mobile telephones, smartphones and other smart devices, and tablet PCs.
  • PDAs Personal Digital Assistants
  • mobile telephones smartphones and other smart devices
  • tablet PCs tablet PCs
  • the portable electronic devices/apparatus may provide one or more audio/text/video communication functions (e.g. telecommunication, video-communication, and/or text transmission (Short Message Service (SMSyMultimedia Message Service (MMS)/e-mailing) functions), interactive/non- interactive viewing functions (e.g. web-browsing, navigation, TV/program viewing functions), music recording/playing functions (e.g. MP3 or other format and/or (FM/AM) radio broadcast recording/playing), downloading/sending of data functions, image capture function (e.g. using a (e.g. in-built) digital camera), and gaming functions.
  • audio/text/video communication functions e.g. telecommunication, video-communication, and/or text transmission (Short Message Service (SMSyMultimedia Message Service (MMS)/e-mailing) functions
  • interactive/non- interactive viewing functions e.g. web-browsing, navigation, TV/program viewing functions
  • music recording/playing functions e.g.
  • Certain electronic devices such as digital cameras and camera-equipped smartphones, allow users to take digital photographs. Such photographs may be stored for later reference and/or may be transmitted to a third party.
  • an apparatus comprising at least one processor and at least one memory including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following:
  • an image may be recorded at high resolution and/or having a high number of pixels, such as 41 megapixels (Mpx).
  • a series of copies of the image may be created which have a smaller area (and thus a smaller image size) to that of the original image.
  • a region of detail may be identified in the original image, and compared with the corresponding regions in the other smaller copies. If the region in the original and the region in the copy match to a predefined level of similarity, then the copy may be considered to still represent the original image without significant loss of detail despite being a smaller size.
  • One or more such smaller images, forming a set of images, may be created which match the level of detail in the original image to the predefined level of similarity.
  • a smaller copy from this set may be prioritised.
  • This copy may be, for example, the smallest area (and thus smallest file size) copy which retains a sufficient level of detail.
  • the smaller image copy may be prioritised by presenting it to the user, for example by automatically displaying the one or more smaller image copies to the user after identifying the set of the plurality of smaller image copies.
  • Prioritisation may be of one or more smaller image copies which fulfil the predetermined similarity criterion.
  • Prioritisation of one of a set of smaller image copies may be made by, for example, positioning that image copy at the top of a list of the smaller image copies in the set, locating it centrally on screen, and/or by highlighting it in some way, for example, by displaying it with a border or with a larger size than other displayed image copies.
  • a list of prioritised smaller image copies may be ranked according to how well the predetermined similarity criterion is met, in order of increasing file size, or in order of decreasing image quality, for example. Such ranking may be considered to prioritise a smaller image copy from the set. In this way an image may be captured which contains a required level of detail while reducing file size requirements. If images are stored which are of a much greater size than is required to show all the captured details, then file storage space is used up with redundant information. Having a larger file size than that required can make file transfers and upload/download unnecessarily long.
  • the level of detail may be considered "sufficient” if it matches the level of detail in an original larger image according to a predetermined similarity criterion).
  • the prioritisation of a smaller copy may thus be advantageous to a user.
  • the set may comprise all the plurality of smaller image copies or may comprise a partial selection of the plurality of smaller image copies used in the comparison.
  • the set of image copies may be a sub-set of the smaller image copies which have been created. For example, ten image copies may be created, and a set of six of those image copies may be identified as having a particular level of detail corresponding to the predetermined similarity criterion.
  • the image area may be determined as the number of pixels across the width multiplied by the number of pixels along the height of the original electronic image or a respective smaller image copy.
  • the plurality of smaller image copies of the original electronic image may be created by sub-sampling the pixels in the original electronic image to form a smaller image copy having fewer pixels than the original electronic image. In this way a smaller image copy can be created from an original image without necessarily cutting off any edge regions or cropping the image, for example.
  • the apparatus may be configured to identify the at least one region of detail in the original electronic image by: scanning over the original electronic image; and identifying one or more areas of the original electronic image having a representative level of detail by quantifying the level of detail in the original electronic image during the scan. In this way, the apparatus can analyse the different regions of the image and select at least a region which contains sufficient detail to act as a representative sample of the entire image for comparison with the equivalent region in one or more smaller image copies.
  • the representative level of detail may represent the highest level of detail in the original electronic image, or a mid-level of detail which, if reduced, would render the image indistinct.
  • a user may wish to retain all the details in an image, and therefore wish to base a comparison between the original and a smaller copy image on a region of the original having the highest level of detail (if the finest details are retained then less detailed areas should also be of an acceptable quality).
  • a user may wish to retain the details of the general subject of an image, but may not be concerned with retaining, for example, a small very fine-detailed feature in the image which is not the intended subject of the image. Thus he may wish to base a comparison between an original and a copy image on a representative mid-level of detail which should be retained in the image to keep the image distinct, but which is not necessarily the highest level of detail in the image.
  • the apparatus may be configured to identify an area having a representative level of detail according to one or more of identifying: a high contrast variation compared with the average contrast variation for the entire original electronic image; a high colour (hue) value variation compared with the average colour value variation for the entire original electronic image; a high saturation variation compared with the average saturation variation for the entire original electronic image; and a high brightness (lightness or "value” variation compared with the average brightness variation for the entire original electronic image.
  • identification of an area having a representative level of detail may be performed considering other criteria.
  • a high variance may be considered to be a large number of different values in a particular area, or may be considered to be a rapid variation of values at a boundary or within a given area, for example. These levels can be assessed based on user perception tests, for example.
  • the apparatus may be configured to compare the region of detail in the original electronic image with the corresponding areas of detail in the smaller image copies by expanding/enlarging/stretching the smaller image copies to have an area corresponding to the area of the original electronic image, and comparing the region of detail in the original electronic image with the corresponding expanded regions of detail in the increased-area image copies.
  • an original image may be 10 cm x 10 cm in area.
  • the region of detail in the original image may be a 5 mm x 5 mm square in the top right hand corner of the image.
  • a smaller image copy may have an area of 2.5 cm x 2.5 cm, and be stretched up to a 10 cm x 10 cm size to match the size of the original image.
  • the level of detail in the 5 mm x 5 mm square in the top right corner of the stretched image copy is a stretched version of the 1 .25 mm x 1 .25 mm top right corner of the non-stretched smaller image copy, and can be compared with the equivalent region in the original image. Stretching the smaller image copy to the size of the original image copy may allow for simpler comparison between regions of detail, for example.
  • the apparatus may be configured to compare the region of detail in the original electronic image with the corresponding areas of detail in the smaller image copies by matching one or more patterns in the region of detail in the original electronic image with corresponding patterns in the areas of detail in the smaller image copies.
  • Different pattern matching algorithms may be selected and used depending on the type of detail in the region of detail. For example, different pattern matching algorithms may be more suitable depending on if the detail has high colour variation or a rapid contrast variation over a particular area, for example.
  • the predetermined similarity criterion may be a match between the original electronic image and a smaller image copy of above one or more of the following matching thresholds: 50%, 60%, 70%, 80%, 85%, 90%, 95%, or 99%. Of course other thresholds may be used. Thus the region of detail in the smaller image copy may need to be above a particular threshold level for a match to be determined.
  • the predetermined similarity criterion may be a loss of detail between the original electronic image and a smaller image copy of below one or more of the following loss thresholds: 50%, 40%, 30%, 20%, 15%, 10%, 5%, or 1 %. Of course other thresholds may be used. Thus the region of detail loss in the smaller image copy may need to be below a particular threshold level of loss for a match to be determined.
  • the apparatus may be configured to, for a plurality of prioritised smaller copies having respective levels of detail in the respective corresponding areas corresponding to the predetermined similarity criterion, identify the prioritised smaller copy of the plurality having: the smallest file size of the prioritised smaller copies in the plurality; or the highest level of detail of the prioritised smaller copies in the plurality.
  • the copy having the smallest image size of those three may be prioritised.
  • the copy having the highest level of detail below the file size cut-off may be prioritised, e.g., by appearing first in a selection list.
  • the apparatus may be configured to transmit the prioritised smaller image copy to a third party device.
  • a user may wish to send an image to friend using an MMS message or as an attachment to an e-mail.
  • a user may wish to transfer an image to a friend's mobile device using near field communication (NFC).
  • NFC near field communication
  • a user may wish to post the image on a website or social media site, or may wish to upload the image to a server.
  • the user may benefit by being able to transmit an image at a file size allowed by a particular transmission method without compromising the image quality more than necessary to achieve the required file size.
  • the apparatus may be configured to create the plurality of smaller image copies such that each image copy has a file size which is less than or equal to the maximum file size associated with the selected method of transmission.
  • the original image file and/or the plurality of smaller image copies may be, for example, JPEG files, BMP files, PNG files, TIFF files, RAW files, GIF files, SVG files, EPS files, PDF files, or any other type of image file.
  • the apparatus may be one or more of: a portable electronic device, a mobile phone, a smartphone, a tablet computer, a surface computer, a laptop computer, a personal digital assistant, a graphics tablet, a pen-based computer, a digital camera, a watch, a nonportable electronic device, a desktop computer, a monitor/display, a household appliance, a server, or a module for one or more of the same.
  • a computer readable medium comprising computer program code stored thereon, the computer readable medium and computer program code being configured to, when run on at least one processor perform at least the following: for an original electronic image having an original image area, create a plurality of smaller image copies each having respective different smaller image areas than the original image area;
  • a computer program may be stored on a storage media (e.g. on a CD, a DVD, a memory stick or other non-transitory medium).
  • a computer program may be configured to run on a device or apparatus as an application.
  • An application may be run by a device or apparatus via an operating system.
  • a computer program may form part of a computer program product.
  • Corresponding computer programs for implementing one or more of the methods disclosed are also within the present disclosure and encompassed by one or more of the described examples.
  • a method comprising: for an original electronic image having an original image area, creating a plurality of smaller image copies each having respective different smaller image areas than the original image area;
  • an apparatus comprising means for: for an original electronic image having an original image area, creating a plurality of smaller image copies each having respective different smaller image areas than the original image area:
  • the present disclosure includes one or more corresponding aspects, examples or features in isolation or in various combinations whether or not specifically stated (including claimed) in that combination or in isolation.
  • Corresponding means and corresponding function units e.g., region of detail identifier, region of detail comparer, set of image copies identifier, image copy prioritiser for performing one or more of the discussed functions are also within the present disclosure.
  • figure 1 illustrates an example apparatus comprising a number of electronic components, including memory and a processor, according to one example of the present disclosure
  • figure 2 illustrates an example apparatus comprising a number of electronic components, including memory, a processor and a communication unit, according to another example of the present disclosure
  • figure 3 illustrates an example apparatus comprising a number of electronic components, including memory and a processor, according to another example of the present disclosure
  • FIGS. 4a-4c illustrate an example of prioritising a smaller image from a series of smaller images created from an original electronic image, according to examples of the present disclosure
  • FIGS. 5a-5b illustrate examples of sub-sampling pixels of an original image to obtain a smaller image copy, according to examples of the present disclosure
  • figure 6 illustrates an example of identifying an area of detail in an image, according to examples of the present disclosure
  • FIGS 7a and 7b illustrate examples of images having different levels of detail which may be processed according to examples of the present disclosure
  • FIGS. 8a -8b each illustrate an apparatus in communication with a remote computing element
  • figure 9 illustrates a flowchart according to an example method of the present disclosure.
  • figure 10 illustrates schematically a computer readable medium providing a program. Description of Example Aspects
  • Modern digital cameras can record digital images with very high resolution. For example, it is possible to record an image using a 41 Megapixel (Mpx) camera in a smartphone which can provide a very high level of detail. However, as the amount of detail captured in a digital image increases, so generally does the size of the file required to store the image.
  • Mpx Megapixel
  • the original image file size of the image may be too large to send the image without first processing it to reduce the file size. For example, some e-mail clients do not allow attachments over 10 Mb to be transmitted.
  • a larger file may take longer to download/transfer, may take a longer time to be displayed, and may require a larger amount of memory for storage than a smaller sized file.
  • a user may process digital images in an image editing application, for example to crop the image, reduce the number of pixels, or otherwise create a copy of the image with a smaller file size.
  • This approach may require the user to have skill and knowledge in operating such an image editing application.
  • This approach also may not be practical if the user is using, for example, a digital camera or smartphone (or other handheld electronic device) to capture, process and send the images.
  • a laptop or desktop computer having a larger display and, for example, a physical keyboard and mouse may make editing images using an image editing application easier than the user interface of a handheld device.
  • Examples discussed herein may be considered to, for an original electronic image having an original image area, create a plurality of smaller image copies each having respective different smaller image areas than the original image area. At least one region of detail in the original electronic image may be identified. The region of detail in the original electronic image may be compared with the respective corresponding areas of detail in the smaller image copies. Based on the comparisons a set of the plurality of smaller image copies may be identified. The smaller image copies in the set may have a level of detail in the respective corresponding areas corresponding to a predetermined similarity criterion. A smaller image copy from the set may be prioritised according to the predetermined similarity criterion.
  • Other examples depicted in the figures have been provided with reference numerals that correspond to similar features of earlier described examples.
  • feature number 100 can also correspond to numbers 200, 300 etc. These numbered features may appear in the figures but may not have been directly referred to within the description of these particular examples. These have still been provided in the figures to aid understanding of the further examples, particularly in relation to the features of similar earlier described examples.
  • Figure 1 shows an apparatus 100 comprising memory 107, a processor 108, input I and output O.
  • memory 107 a processor 108
  • input I and output O input I and output O.
  • processors 108 a processor 108
  • input I and output O input I and output O.
  • the apparatus 100 is an Application Specific Integrated Circuit (ASIC) for a portable electronic device with a touch sensitive display.
  • ASIC Application Specific Integrated Circuit
  • the apparatus 100 can be a module for such a device, or may be the device itself, wherein the processor 108 is a general purpose CPU of the device and the memory 107 is general purpose memory comprised by the device.
  • the display in other examples, may not be touch sensitive.
  • the input I allows for receipt of signalling to the apparatus 100 from further components, such as components of a portable electronic device (like a touch-sensitive or hover- sensitive display) or the like.
  • the output O allows for onward provision of signalling from within the apparatus 100 to further components such as a display screen, speaker, or vibration module.
  • the input I and output O are part of a connection bus that allows for connection of the apparatus 100 to further components.
  • the processor 108 is a general purpose processor dedicated to executing/processing information received via the input I in accordance with instructions stored in the form of computer program code on the memory 107.
  • the output signalling generated by such operations from the processor 108 is provided onwards to further components via the output O.
  • the memory 107 (not necessarily a single memory unit) is a computer readable medium (solid state memory in this example, but may be other types of memory such as a hard drive, ROM, RAM, Flash or the like) that stores computer program code.
  • This computer program code stores instructions that are executable by the processor 108, when the program code is run on the processor 108.
  • the processor 107 and the processor 108 can be understood to, in one or more examples, provide an active coupling between the processor 108 and the memory 107 to allow the processor
  • the input I, output O, processor 108 and memory 107 are all electrically connected to one another internally to allow for electrical communication between the respective components I, O, 107, 108.
  • the components are all located proximate to one another so as to be formed together as an ASIC, in other words, so as to be integrated together as a single chip/circuit that can be installed into an electronic device. In other examples one or more or all of the components may be located separately from one another.
  • Figure 2 depicts an apparatus 200 of a further example, such as a mobile phone.
  • the apparatus 200 may comprise a module for a mobile phone (or PDA or audio/video player), and may just comprise a suitably configured memory 207 and processor 208.
  • the example of figure 2 comprises a display device 204 such as, for example, a liquid crystal display (LCD), e-lnk or touch-screen user interface.
  • the apparatus 200 of figure 2 is configured such that it may receive, include, and/or otherwise access data.
  • this example 200 comprises a communications unit 203, such as a receiver, transmitter, and/or transceiver, in communication with an antenna 202 for connecting to a wireless network and/or a port (not shown) for accepting a physical connection to a network, such that data may be received via one or more types of networks.
  • This example comprises a memory 207 that stores data, possibly after being received via antenna 202 or port or after being generated at the user interface 205.
  • the processor 208 may receive data from the user interface 205, from the memory 207, or from the communication unit 203. It will be appreciated that, in certain examples, the display device 204 may incorporate the user interface 205. Regardless of the origin of the data, these data may be outputted to a user of apparatus 200 via the display device 204, and/or any other output devices provided with apparatus.
  • the processor 208 may also store the data for later use in the memory 207.
  • the memory 207 may store computer program code and/or applications which may be used to instruct/enable the processor 208 to perform functions (e.g. read, write, delete, edit or process data).
  • Figure 3 depicts a further example of an electronic device 300 comprising the apparatus 100 of figure 1 .
  • the apparatus 100 can be provided as a module for device 300, or even as a processor/memory for the device 300 or a processor/memory for a module for such a device 300.
  • the device 300 comprises a processor 308 and a storage medium 307, which are connected (e.g. electrically and/or wirelessly) by a data bus 380.
  • This data bus 380 can provide an active coupling between the processor 308 and the storage medium 307 to allow the processor 308 to access the computer program code.
  • the components (e.g. memory, processor) of the device/apparatus may be linked via cloud computing architecture.
  • the storage device may be a remote server accessed via the internet by the processor.
  • the apparatus 100 in figure 3 is connected (e.g. electrically and/or wirelessly) to an input/output interface 370 that receives the output from the apparatus 100 and transmits this to the device 300 via data bus 380.
  • Interface 370 can be connected via the data bus 380 to a display 304 (touch-sensitive or otherwise) that provides information from the apparatus 100 to a user.
  • Display 304 can be part of the device 300 or can be separate.
  • the device 300 also comprises a processor 308 configured for general control of the apparatus 100 as well as the device 300 by providing signalling to, and receiving signalling from, other device components to manage their operation.
  • the storage medium 307 is configured to store computer code configured to perform, control or enable the operation of the apparatus 100.
  • the storage medium 307 may be configured to store settings for the other device components.
  • the processor 308 may access the storage medium 307 to retrieve the component settings in order to manage the operation of the other device components.
  • the storage medium 307 may be a temporary storage medium such as a volatile random access memory.
  • the storage medium 307 may also be a permanent storage medium such as a hard disk drive, a flash memory, a remote server (such as cloud storage) or a non-volatile random access memory.
  • the storage medium 307 could be composed of different combinations of the same or different memory types.
  • Figures 4a-4c illustrate examples of an original electronic image 400 which can be processed using an apparatus/device as claimed.
  • Figure 4a shows an original electronic image 400 having an original image area, which is "x" wide 404 by "y” high 406.
  • the image 400 may be displayed on a screen of the apparatus/device, for example.
  • the area of the image 400 may be quantified in different ways, such as the number of pixels (e.g., "x” may be 1280 pixels and "y” may be 960 pixels, giving a 1 .2 Mpx image) or the dimensions in inches (in), centimetres, or other unit of length (e.g., "x” may be 4.2 in and "y” may be 3.2 in).
  • a plurality of smaller image copies 410, 420, 430, 440 (four in this example) has been created from the original electronic image 400 as shown in figure 4b.
  • Each of the smaller image copies 410, 420, 430, 440 has a respective different smaller image area than the original image area.
  • the image copies 410, 420, 430, 440 are shown in order of decreasing area (that is, in order of increasing image compression) from left to right in figure 4b.
  • a region of detail 402 in the original electronic image has been identified as the region on the left hand side which shows a series of near-vertical dark lines separated by narrow light lines.
  • This region 402 of the image 400 may be considered to contain the highest level of detail in the image because this region shows the thinnest lines in the image, which are separated by the smallest distance of features in the overall image.
  • the details in the identified region of detail 402 are the first details to be lost in the whole image 400.
  • the smaller image copies 410, 420, 430, 440 are expanded/stretched to have an area corresponding to the area of the original electronic image
  • Figure 4c shows the first smaller image copy 410 has been expanded to form a first expanded image copy 412
  • the second smaller image copy 420 has been expanded to form a second expanded image copy 422
  • the third smaller image copy 430 has been expanded to form a third expanded image copy 432
  • the fourth smaller image copy 440 has been expanded to form a fourth expanded image copy 442.
  • the region of detail 402 in the original electronic image 400 is compared with the respective corresponding areas of detail 414, 424, 434, 444 in the smaller image copies 412, 422, 432, 442. Based on the comparisons, a set of the plurality of smaller image copies is identified, which in this case is a subset of image copies which includes the first and second image copies 412, 422 and excludes the third and fourth smaller image copies 432, 442.
  • a prioritised list of some or all of the created image copies 412, 422, 432, 442 may be provided for selection, which allows a user to select the desired image copy from the list.
  • some image copies from the set of image copies may be omitted from presentation/selection as they are already determined to be inadequate/too low quality according to the similarity criterion.
  • a subset of image copies that is, a partial portion of the set of all image copies
  • even inadequate images may be provided for selection but prioritised with a lower ranking than higher quality image copies.
  • the apparatus in this example is configured to compare the region of detail 402 in the original electronic image 400 with the corresponding areas of detail 414, 424, 434, 444 in the smaller image copies 412, 422, 432, 442 by matching a pattern in the region of detail 402 in the original electronic image 400 with corresponding patterns 414, 424, 434, 444 in the areas of detail in the smaller image copies 412, 422 432, 442.
  • the smaller image copies 412, 422 in the set have a level of detail in the respective corresponding areas 414, 424 corresponding to a predetermined similarity criterion determined by the comparison.
  • the predetermined similarity criterion in this example is whether or not a series of nine distinct vertical dark lines separated by light narrow bands 402 can be resolved in the smaller image copies as it can in the original image 400. This is true for the first and second image copies 412, 422 but not for the third and fourth image copies 432, 442.
  • the vertical lines in the region of detail 402 are still visible in the first smaller image copy 412, and still just visible in the second image copy 422, but are not resolved in the third and fourth image copies 432, 442, where the vertical lines appear to blend into each other to form a fuzzy variable contrast band.
  • the third and fourth image copies 432, 442 are determined to be of too low a quality (due to the higher level of compression applied compared with the other image copies included in the set).
  • the first and second image copes 414, 424 are determined to be of a good enough quality, since the most detailed regions of these image copies 414, 424 matches the corresponding area in the original image 400.
  • the predetermined similarity criterion may be a match between the original electronic image and a smaller image copy of above one or more of the following matching thresholds: 50%, 60%, 70%, 80%, 85%, 90%, 95%, or 99%. Of course other thresholds may be used and may be set by a user in some examples.
  • the predetermined similarity criterion is a loss of detail between the original electronic image and a smaller image copy of below one or more of the following loss thresholds: 50%, 40%, 30%, 20%, 15%, 10%, 5%, and 1 %. Of course other thresholds may be used and may be set by a user in some examples
  • the apparatus may compare each pixel across the respective regions of detail of the original image and a smaller image copy. If, for example, the predetermined similarity criterion requires a match above 80%, then at least 80% of each pair of pixels (one in the original image, the other corresponding pixel in the smaller image copy) must be considered to match. A match may be found if, for example, each pixel from the two images has matching colour, hue and/or saturation values within a particular tolerance (for example, within ⁇ 5% of the full value range).
  • the apparatus may be configured to select a particular pattern matching algorithm for use in matching the patterns in the regions of detail of the original image 400 and the smaller image copies 412, 422 432, 442 depending on the type of detail. For example, a different pattern matching algorithm may be better suited depending on if the region of detail includes a high contrast variation per unit area for the image, a high number of different colours per unit area for the image, a high saturation variation per unit area for the image, or a high brightness variation per unit area of the image, for example.
  • the apparatus may be configured to identify the region of detail according to: a high contrast variation compared with the average contrast variation for the entire original electronic image; a high colour value variation compared with the average colour value variation for the entire original electronic image; a high saturation variation compared with the average saturation variation for the entire original electronic image; and/or a high brightness variation compared with the average brightness variation for the entire original electronic image.
  • a high contrast variation compared with the average contrast variation for the entire original electronic image
  • a high colour value variation compared with the average colour value variation for the entire original electronic image
  • a high saturation variation compared with the average saturation variation for the entire original electronic image
  • a high brightness variation compared with the average brightness variation for the entire original electronic image.
  • a particular smaller image copy 422 in this example is prioritised from the set according to the predetermined similarity criterion.
  • the smaller image copy is selected as being the image copy having a high enough resolution that the detail can be observed (i.e. which meets the predetermined similarity criterion), and has the smallest file size necessary to achieve this resolution.
  • the smallest sized file 422 from the set is prioritised.
  • more than one smaller image copies may be prioritised, such as both the smaller image copies 412, 422 in the set of this example.
  • a user may be able to select the image copy they wish to use from a set.
  • the set may be presented for display to a user.
  • the user may determine that he would rather not choose the image copy having the smallest file size and would rather obtain a better quality of image at the cost of increasing file size. He may be keeping the photo for his own collection, or he may be particularly happy with the photograph, for example.
  • the apparatus may therefore be considered to allow for the prioritisation of one or more smaller image copies which fulfil the criteria of matching the original image copy to a particular desired level (governed by the predetermined similarity criterion) in this example.
  • the apparatus may prompt the user to select one image from that set according to a selection criterion. For example, the user may be prompted to either select the best quality image in the set, the smaller file size copy in the set, and/or may be presented with (e.g., zoomable) thumbnail images of the images in the set to select a particular one according to the user's requirements.
  • Figure 5a illustrates a schematic example of creating smaller image copies 510, 520, 530 from an original electronic image 500.
  • the original electronic image 500 has an area of 800 units 2 , being 40 units wide by 20 units high (the units may be pixels, inches, or centimetres, for example).
  • the squares in the bottom left corner each represent 1 unit 2
  • the larger squares elsewhere represent an area 25 units 2
  • the image area may be determined as the number of pixels across the width multiplied by the number of pixels along the height of the original electronic image or a respective smaller image copy.
  • Smaller image copy 510 has an area of 450 units 2 , being 30 units wide by 15 units high
  • smaller image copy 520 has an area of 200 units 2 , being 20 units wide by 10 units high
  • smaller image copy 530 has an area of 50 units 2 , being 10 units wide by 5 units high.
  • the aspect ratio (2:1 ) of the image has been maintained in creating the smaller image copies 510, 520, 530.
  • the aspect ratio may be changed between the original and one or more of the smaller image copies, for example if a portion of an image is cropped away or the image is stretched in one direction.
  • Figure 5b illustrates schematically that a smaller image copy may be created by sub- sampling the pixels in the original electronic image.
  • the smaller image copy may be formed from the sub-sampled pixels, thereby having fewer pixels than the original electronic image.
  • the original electronic image 550 is 16 pixels wide by 8 pixels high.
  • the image is formed from black pixels 566 on a white background.
  • Each pixel 562, 564 in the image is either white or black.
  • the pixels 562, 564 of the original electronic image 550 are sub-sampled by selecting every alternate pixel 564 (indicated by hatched lines) and discarding every other alternate pixel 562.
  • the resulting smaller image copy 580 is a sub- sampled version of the original electronic image 550.
  • the original image shown in black pixels 566 can still be seen in the smaller image copy 580 but at lower resolution. This is only one example of sub-sampling and other sub-sampling methods may be used, for example which reduce the number of different colours, saturation values and/or brightness values in an image.
  • Figure 6 illustrates one example of how an apparatus may be configured to identify the region or regions of detail in an image.
  • Figure 6 shows an image 600 which has been notionally split into a grid of sample regions 602.
  • the apparatus may scan over the original electronic image 600, in this example by performing a raster scan 606 starting 604 at the top left corner and finishing 608 in the bottom left corner.
  • the apparatus (e.g., periodically) quantifies the level of detail in the original electronic image during the scan, which in this example is done by determining the level of detail at each sample region 602. The area or areas having a representative level of detail are identified.
  • the apparatus may consider a frame of a particular size (for example, the size of a sample region 602 shown in figure 6).
  • the apparatus may scan the frame over the original electronic image to periodically sample the level of detail present within that frame. Different frame positions may overlap each other horizontally and/or vertically. An area of representative detail may then be identified which is not restricted to a predetermined grid position as in figure 6.
  • the apparatus may randomly select a portion of the image to sample the level of detail at that location, to determine an area of representative detail after a predetermined number of samples.
  • the area of representative detail may vary in size dependent on the particular image being analysed.
  • An image with many small features e.g., an image of a crowd at a concert
  • an image with a few large features e.g., a portrait photograph of two friends
  • the representative level of detail may represent the highest level of detail in the original electronic image. This may help to ensure that all the features in the captured image are rendered resolvable in the smaller image copies. By ensuring the most detailed region(s) match the corresponding detailed region(s) in the original image, then the other less- detailed regions will also likely have a resolution which matches (according to a predetermined similarity criterion) that of the original image.
  • the level of representative detail may not necessarily be an area showing the highest level of detail in an image.
  • an image 700 includes several detailed motifs such as birds 702, branches 704, and plants 706, an area 708, 710, 712 capturing some of these detailed motifs may be selected as a representative area of detail, and the most detailed such area need not necessarily be identified.
  • a user may be asked to identify which details are to be used in the comparison so that these details are likely to be sufficiently retained in the smaller image copies.
  • Features may be selected, for example, by user confirmation of possible features 702, 704, 706, or by free user selection, for example achieved by dragging a selection box around a feature or features of interest.
  • more than one area of detail may be selected for comparison between the original electronic image and the image copies. Doing so may improve the image copies selected for inclusion in the set and may improve the prioritisation of a smaller image copy from the set by acting as a repeat test based on different detail criteria (a different area of detail).
  • the representative level of detail may represent a mid-level of detail which, if reduced, would render the image indistinct.
  • an image 750 contains relatively few sharp details, such as a photograph of the sky 752 with clouds 754 over the horizon 756, then an area of representative detail may be an area 758 including both cloud and sky (as there would be a high level of colour difference compared with the rest of the image) but such an area may not be the most detailed region of the image.
  • the level of detail in the clouds 754 and sky 752 is required to match (to a predetermined similarity criterion) the corresponding level of detail in the original image; otherwise the image as a whole would be rendered indistinct.
  • that area of the image could be considered the most detailed region of the image, but not be representative of the level of detail in the image as a whole.
  • a user may be interested in capturing the details of the sky 752 but not be interested in capturing the details of the birds 760. If an area covering the birds 760 was selected as the area of detail, then smaller image copies selected for inclusion in the set may meet a predetermined similarity criterion with respect the detailed birds, but the rest of the image (i.e.
  • the apparatus may identify a plurality of prioritised smaller copies having respective levels of detail in the respective corresponding areas corresponding to the predetermined similarity criterion. For example, an apparatus may create ten smaller image copies from an original electronic image, and after analysing an area of detail between each smaller image copy and the original electronic image, identify six smaller image copies for inclusion in a set meeting a predetermined similarity criterion.
  • the apparatus may prioritise more than one smaller image copy, for example if two copies provide a similar level of detail match with the original image but have been processed in different ways (e.g., different sub-sampling techniques have been used, or different pattern matching algorithms have been used).
  • the apparatus may be configured to identify a prioritised smaller copy which has the smallest file size of the prioritised smaller copies in the plurality. This may aid data transfer between devices and data upload/download/loading times.
  • the apparatus may be configured to identify a prioritised smaller copy which has the highest level of detail of the prioritised smaller copies in the plurality. This may improve the resultant image quality.
  • the user may wish to obtain a smaller image copy from an original electronic image so that storage space in a memory is not taken up by storing image details which are not considered necessary.
  • the user may also, or alternatively, wish to transmit an image to a third party, for example by near field communication (NFC) with a friend's electronic device, by sending the image as an attachment to an e-mail, MMS, or chat message, or by uploading the image to a website or social media application, for example.
  • NFC near field communication
  • the apparatus disclosed herein may be configured to create the plurality of smaller image copies such that each image copy has a file size which is less than or equal to the maximum file size associated with the selected method of transmission.
  • the apparatus may identify an upper file size limit according to the method by which the image will be transmitted to a third party, and may not create smaller image copies of an original electronic image which exceed that file size limit, thereby saving processing power in creating smaller image copies which are too big to transmit by the user's desired method.
  • FIG 8a shows an example of an apparatus 800 in communication with a remote server.
  • Figure 8b shows an example of an apparatus 800 in communication with a "cloud" for cloud computing.
  • apparatus 800 (which may be apparatus 100, 200 or 300) is also in communication with a further apparatus 802.
  • the apparatus 802 may be a touch screen display for example.
  • the apparatus 800 and further apparatus 802 may both be comprised within a device such as a portable communications device or PDA. Communication may be via a communications unit, for example.
  • Figure 8a shows the remote computing element to be a remote server 804, with which the apparatus 800 may be in wired or wireless communication (e.g. via the internet, Bluetooth, NFC, a USB connection, or any other suitable connection as known to one skilled in the art).
  • the apparatus 800 is in communication with a remote cloud 810 (which may, for example, be the Internet, or a system of remote computers configured for cloud computing).
  • a remote cloud 810 which may, for example, be the Internet, or a system of remote computers configured for cloud computing.
  • the original electronic image and/or the smaller image copies may be stored remotely and be accessible by the apparatus 800.
  • the apparatus 800 may perform the comparison between the regions of detail in the images by running comparison/pattern matching calculations at a remote server 804/cloud 810 and accessing the calculation results identification of a set of smaller image copies.
  • the remote server 804/cloud 810 may store comparison results for future reference by the apparatus. For example, when analysing similar images in the future, the results obtained from a past analysis may be accessed at the remote server 804/cloud 810 and used to speed up future analysis.
  • Figure 9a illustrates a method 900 according to an example of the present disclosure.
  • the method comprises, for an original electronic image having an original image area, creating a plurality of smaller image copies each having respective different smaller image areas than the original image area 902; identifying at least one region of detail in the original electronic image 904; comparing the region of detail in the original electronic image with the respective corresponding areas of detail in the smaller image copies 906; based on the comparisons, identifying a set of the plurality of smaller image copies, the smaller image copies in the set having a level of detail in the respective corresponding areas corresponding to a predetermined similarity criterion 908; and prioritising a smaller image copy from the set according to the predetermined similarity criterion 910.
  • Figure 10 illustrates schematically a computer/processor readable medium 1000 providing a program according to an example of this disclosure.
  • the computer/ processor readable medium is a disc such as a Digital Versatile Disc (DVD) or a compact disc (CD).
  • DVD Digital Versatile Disc
  • CD compact disc
  • the computer readable medium may be any medium that has been programmed in such a way as to carry out the functionality herein described.
  • the computer program code may be distributed between the multiple memories of the same type, or multiple memories of a different type, such as ROM, RAM, flash, hard disk, solid state, etc.
  • Any mentioned apparatus/device/server and/or other features of particular mentioned apparatus/device/server may be provided by apparatus arranged such that they become configured to carry out the desired operations only when enabled, e.g. switched on, or the like. In such cases, they may not necessarily have the appropriate software loaded into the active memory in the non-enabled (e.g. switched off state) and only load the appropriate software in the enabled (e.g. on state).
  • the apparatus may comprise hardware circuitry and/or firmware.
  • the apparatus may comprise software loaded onto memory.
  • Such software/computer programs may be recorded on the same memory/processor/functional units and/or on one or more memories/processors/ functional units.
  • a particular mentioned apparatus/device/server may be preprogrammed with the appropriate software to carry out desired operations, and wherein the appropriate software can be enabled for use by a user downloading a "key", for example, to unlock/enable the software and its associated functionality.
  • Advantages associated with such examples can include a reduced requirement to download data when further functionality is required for a device, and this can be useful in examples where a device is perceived to have sufficient capacity to store such pre-programmed software for functionality that may not be enabled by a user.
  • Any mentioned apparatus/circuitry/elements/processor may have other functions in addition to the mentioned functions, and that these functions may be performed by the same apparatus/circuitry/elements/processor.
  • One or more disclosed aspects may encompass the electronic distribution of associated computer programs and computer programs (which may be source/transport encoded) recorded on an appropriate carrier (e.g. memory, signal).
  • Any "computer” described herein can comprise a collection of one or more individual processors/processing elements that may or may not be located on the same circuit board, or the same region/position of a circuit board or even the same device. In some examples one or more of any mentioned processors may be distributed over a plurality of devices. The same or different processor/processing elements may perform one or more functions described herein.
  • the term “signalling” may refer to one or more signals transmitted as a series of transmitted and/or received electrical/optical signals. The series of signals may comprise one, two, three, four or even more individual signal components or distinct signals to make up said signalling. Some or all of these individual signals may be transmitted/received by wireless or wired communication simultaneously, in sequence, and/or such that they temporally overlap one another.
  • processors and memory may comprise a computer processor, Application Specific Integrated Circuit (ASIC), field-programmable gate array (FPGA), and/or other hardware components that have been programmed in such a way to carry out the inventive function.
  • ASIC Application Specific Integrated Circuit
  • FPGA field-programmable gate array

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

An apparatus, the apparatus comprising at least one processor, and at least one memory including computer program code,the at least one memory and the computer program code configured, with the at least one processor, to cause the apparatus to perform at least the following: for an original electronic image having an original image area, create a plurality of smaller image copies each having respective different smaller image areas than the original image area; identify at least one region of detail in the original electronic image;compare the region of detail in the original electronic image with the respective corresponding areas of detail in the smaller image copies;based on the comparisons, identify a set of the plurality of smaller image copies, the smaller image copies in the set having a level of detail in the respective corresponding areas corresponding to a predetermined similarity criterion; and prioritise a smaller image copy from the set according to the predetermined similarity criterion.

Description

AN APPARATUS FOR PROCESSING IMAGES AND ASSOCIATED METHODS Technical Field The present disclosure relates to user interfaces and image processing, associated methods, computer programs and apparatus. Certain disclosed examples may relate to portable electronic devices, for example so-called hand-portable electronic devices which may be hand-held in use (although they may be placed in a cradle in use). Such hand- portable electronic devices include so-called Personal Digital Assistants (PDAs), mobile telephones, smartphones and other smart devices, and tablet PCs.
The portable electronic devices/apparatus according to one or more disclosed examples may provide one or more audio/text/video communication functions (e.g. telecommunication, video-communication, and/or text transmission (Short Message Service (SMSyMultimedia Message Service (MMS)/e-mailing) functions), interactive/non- interactive viewing functions (e.g. web-browsing, navigation, TV/program viewing functions), music recording/playing functions (e.g. MP3 or other format and/or (FM/AM) radio broadcast recording/playing), downloading/sending of data functions, image capture function (e.g. using a (e.g. in-built) digital camera), and gaming functions.
Background
Certain electronic devices, such as digital cameras and camera-equipped smartphones, allow users to take digital photographs. Such photographs may be stored for later reference and/or may be transmitted to a third party.
The listing or discussion of a prior-published document or any background in this specification should not necessarily be taken as an acknowledgement that the document or background is part of the state of the art or is common general knowledge. One or more examples of the present disclosure may or may not address one or more of the background issues.
Summary In a first example there is provided an apparatus comprising at least one processor and at least one memory including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following:
for an original electronic image having an original image area, create a plurality of smaller image copies each having respective different smaller image areas than the original image area;
identify at least one region of detail in the original electronic image;
compare the region of detail in the original electronic image with the respective corresponding areas of detail in the smaller image copies;
based on the comparisons, identify a set of the plurality of smaller image copies, the smaller image copies in the set having a level of detail in the respective corresponding areas corresponding to a predetermined similarity criterion; and
prioritise a smaller image copy from the set according to the predetermined similarity criterion. For example, an image may be recorded at high resolution and/or having a high number of pixels, such as 41 megapixels (Mpx). A series of copies of the image may be created which have a smaller area (and thus a smaller image size) to that of the original image. A region of detail may be identified in the original image, and compared with the corresponding regions in the other smaller copies. If the region in the original and the region in the copy match to a predefined level of similarity, then the copy may be considered to still represent the original image without significant loss of detail despite being a smaller size. One or more such smaller images, forming a set of images, may be created which match the level of detail in the original image to the predefined level of similarity. A smaller copy from this set may be prioritised. This copy may be, for example, the smallest area (and thus smallest file size) copy which retains a sufficient level of detail.
The smaller image copy may be prioritised by presenting it to the user, for example by automatically displaying the one or more smaller image copies to the user after identifying the set of the plurality of smaller image copies. Prioritisation may be of one or more smaller image copies which fulfil the predetermined similarity criterion. Prioritisation of one of a set of smaller image copies may be made by, for example, positioning that image copy at the top of a list of the smaller image copies in the set, locating it centrally on screen, and/or by highlighting it in some way, for example, by displaying it with a border or with a larger size than other displayed image copies. A list of prioritised smaller image copies may be ranked according to how well the predetermined similarity criterion is met, in order of increasing file size, or in order of decreasing image quality, for example. Such ranking may be considered to prioritise a smaller image copy from the set. In this way an image may be captured which contains a required level of detail while reducing file size requirements. If images are stored which are of a much greater size than is required to show all the captured details, then file storage space is used up with redundant information. Having a larger file size than that required can make file transfers and upload/download unnecessarily long. However, it can be difficult to specify a required file size and be sure to retain the details of the captured image sufficiently (the level of detail may be considered "sufficient" if it matches the level of detail in an original larger image according to a predetermined similarity criterion). The prioritisation of a smaller copy may thus be advantageous to a user.
The set may comprise all the plurality of smaller image copies or may comprise a partial selection of the plurality of smaller image copies used in the comparison. Thus the set of image copies may be a sub-set of the smaller image copies which have been created. For example, ten image copies may be created, and a set of six of those image copies may be identified as having a particular level of detail corresponding to the predetermined similarity criterion.
The image area may be determined as the number of pixels across the width multiplied by the number of pixels along the height of the original electronic image or a respective smaller image copy.
The plurality of smaller image copies of the original electronic image may be created by sub-sampling the pixels in the original electronic image to form a smaller image copy having fewer pixels than the original electronic image. In this way a smaller image copy can be created from an original image without necessarily cutting off any edge regions or cropping the image, for example.
The apparatus may be configured to identify the at least one region of detail in the original electronic image by: scanning over the original electronic image; and identifying one or more areas of the original electronic image having a representative level of detail by quantifying the level of detail in the original electronic image during the scan. In this way, the apparatus can analyse the different regions of the image and select at least a region which contains sufficient detail to act as a representative sample of the entire image for comparison with the equivalent region in one or more smaller image copies. The representative level of detail may represent the highest level of detail in the original electronic image, or a mid-level of detail which, if reduced, would render the image indistinct. A user may wish to retain all the details in an image, and therefore wish to base a comparison between the original and a smaller copy image on a region of the original having the highest level of detail (if the finest details are retained then less detailed areas should also be of an acceptable quality). A user may wish to retain the details of the general subject of an image, but may not be concerned with retaining, for example, a small very fine-detailed feature in the image which is not the intended subject of the image. Thus he may wish to base a comparison between an original and a copy image on a representative mid-level of detail which should be retained in the image to keep the image distinct, but which is not necessarily the highest level of detail in the image.
The apparatus may be configured to identify an area having a representative level of detail according to one or more of identifying: a high contrast variation compared with the average contrast variation for the entire original electronic image; a high colour (hue) value variation compared with the average colour value variation for the entire original electronic image; a high saturation variation compared with the average saturation variation for the entire original electronic image; and a high brightness (lightness or "value" variation compared with the average brightness variation for the entire original electronic image. Of course, identification of an area having a representative level of detail may be performed considering other criteria. A high variance may be considered to be a large number of different values in a particular area, or may be considered to be a rapid variation of values at a boundary or within a given area, for example. These levels can be assessed based on user perception tests, for example.
The apparatus may be configured to compare the region of detail in the original electronic image with the corresponding areas of detail in the smaller image copies by expanding/enlarging/stretching the smaller image copies to have an area corresponding to the area of the original electronic image, and comparing the region of detail in the original electronic image with the corresponding expanded regions of detail in the increased-area image copies. Thus, for example, an original image may be 10 cm x 10 cm in area. The region of detail in the original image may be a 5 mm x 5 mm square in the top right hand corner of the image. A smaller image copy may have an area of 2.5 cm x 2.5 cm, and be stretched up to a 10 cm x 10 cm size to match the size of the original image. The level of detail in the 5 mm x 5 mm square in the top right corner of the stretched image copy is a stretched version of the 1 .25 mm x 1 .25 mm top right corner of the non-stretched smaller image copy, and can be compared with the equivalent region in the original image. Stretching the smaller image copy to the size of the original image copy may allow for simpler comparison between regions of detail, for example.
The apparatus may be configured to compare the region of detail in the original electronic image with the corresponding areas of detail in the smaller image copies by matching one or more patterns in the region of detail in the original electronic image with corresponding patterns in the areas of detail in the smaller image copies. Different pattern matching algorithms may be selected and used depending on the type of detail in the region of detail. For example, different pattern matching algorithms may be more suitable depending on if the detail has high colour variation or a rapid contrast variation over a particular area, for example.
The predetermined similarity criterion may be a match between the original electronic image and a smaller image copy of above one or more of the following matching thresholds: 50%, 60%, 70%, 80%, 85%, 90%, 95%, or 99%. Of course other thresholds may be used. Thus the region of detail in the smaller image copy may need to be above a particular threshold level for a match to be determined.
The predetermined similarity criterion may be a loss of detail between the original electronic image and a smaller image copy of below one or more of the following loss thresholds: 50%, 40%, 30%, 20%, 15%, 10%, 5%, or 1 %. Of course other thresholds may be used. Thus the region of detail loss in the smaller image copy may need to be below a particular threshold level of loss for a match to be determined. The apparatus may be configured to, for a plurality of prioritised smaller copies having respective levels of detail in the respective corresponding areas corresponding to the predetermined similarity criterion, identify the prioritised smaller copy of the plurality having: the smallest file size of the prioritised smaller copies in the plurality; or the highest level of detail of the prioritised smaller copies in the plurality. For example, if, from a set of five smaller image copies, three are determined to meet the predetermined similarity criterion, then the copy having the smallest image size of those three may be prioritised. As another example, if a set of six smaller copies all have a file size below a predetermined amount (for example, to be suitable for transmission by e-mail), then from a set of three smaller image copies meeting the predetermined similarity criterion, the copy having the highest level of detail below the file size cut-off may be prioritised, e.g., by appearing first in a selection list. The apparatus may be configured to transmit the prioritised smaller image copy to a third party device. For example, a user may wish to send an image to friend using an MMS message or as an attachment to an e-mail. A user may wish to transfer an image to a friend's mobile device using near field communication (NFC). A user may wish to post the image on a website or social media site, or may wish to upload the image to a server. The user may benefit by being able to transmit an image at a file size allowed by a particular transmission method without compromising the image quality more than necessary to achieve the required file size. Based on a selected method of transmission of an electronic file to a third party, the apparatus may be configured to create the plurality of smaller image copies such that each image copy has a file size which is less than or equal to the maximum file size associated with the selected method of transmission. The original image file and/or the plurality of smaller image copies may be, for example, JPEG files, BMP files, PNG files, TIFF files, RAW files, GIF files, SVG files, EPS files, PDF files, or any other type of image file.
The apparatus may be one or more of: a portable electronic device, a mobile phone, a smartphone, a tablet computer, a surface computer, a laptop computer, a personal digital assistant, a graphics tablet, a pen-based computer, a digital camera, a watch, a nonportable electronic device, a desktop computer, a monitor/display, a household appliance, a server, or a module for one or more of the same. According to a further example there is provided a computer readable medium comprising computer program code stored thereon, the computer readable medium and computer program code being configured to, when run on at least one processor perform at least the following: for an original electronic image having an original image area, create a plurality of smaller image copies each having respective different smaller image areas than the original image area;
identify at least one region of detail in the original electronic image;
compare the region of detail in the original electronic image with the respective corresponding areas of detail in the smaller image copies;
based on the comparisons, identify a set of the plurality of smaller image copies, the smaller image copies in the set having a level of detail in the respective corresponding areas corresponding to a predetermined similarity criterion; and prioritise a smaller image copy from the set according to the predetermined similarity criterion.
A computer program may be stored on a storage media (e.g. on a CD, a DVD, a memory stick or other non-transitory medium). A computer program may be configured to run on a device or apparatus as an application. An application may be run by a device or apparatus via an operating system. A computer program may form part of a computer program product. Corresponding computer programs for implementing one or more of the methods disclosed are also within the present disclosure and encompassed by one or more of the described examples.
According to a further example, there is provided a method, the method comprising: for an original electronic image having an original image area, creating a plurality of smaller image copies each having respective different smaller image areas than the original image area;
identifying at least one region of detail in the original electronic image;
comparing the region of detail in the original electronic image with the respective corresponding areas of detail in the smaller image copies;
based on the comparisons, identifying a set of the plurality of smaller image copies, the smaller image copies in the set having a level of detail in the respective corresponding areas corresponding to a predetermined similarity criterion; and
prioritising a smaller image copy from the set according to the predetermined similarity criterion. According to a further example there is provided an apparatus comprising means for: for an original electronic image having an original image area, creating a plurality of smaller image copies each having respective different smaller image areas than the original image area:
identifying at least one region of detail in the original electronic image;
comparing the region of detail in the original electronic image with the respective corresponding areas of detail in the smaller image copies;
based on the comparisons, identifying a set of the plurality of smaller image copies, the smaller image copies in the set having a level of detail in the respective corresponding areas corresponding to a predetermined similarity criterion; and
prioritising a smaller image copy from the set according to the predetermined similarity criterion. The present disclosure includes one or more corresponding aspects, examples or features in isolation or in various combinations whether or not specifically stated (including claimed) in that combination or in isolation. Corresponding means and corresponding function units (e.g., region of detail identifier, region of detail comparer, set of image copies identifier, image copy prioritiser) for performing one or more of the discussed functions are also within the present disclosure.
The above summary is intended to be merely exemplary and non-limiting. Brief Description of the Figures
A description is now given, by way of example only, with reference to the accompanying drawings, in which: figure 1 illustrates an example apparatus comprising a number of electronic components, including memory and a processor, according to one example of the present disclosure; figure 2 illustrates an example apparatus comprising a number of electronic components, including memory, a processor and a communication unit, according to another example of the present disclosure;
figure 3 illustrates an example apparatus comprising a number of electronic components, including memory and a processor, according to another example of the present disclosure;
figures 4a-4c illustrate an example of prioritising a smaller image from a series of smaller images created from an original electronic image, according to examples of the present disclosure;
figures 5a-5b illustrate examples of sub-sampling pixels of an original image to obtain a smaller image copy, according to examples of the present disclosure;
figure 6 illustrates an example of identifying an area of detail in an image, according to examples of the present disclosure;
figures 7a and 7b illustrate examples of images having different levels of detail which may be processed according to examples of the present disclosure;
figures 8a -8b each illustrate an apparatus in communication with a remote computing element;
figure 9 illustrates a flowchart according to an example method of the present disclosure; and
figure 10 illustrates schematically a computer readable medium providing a program. Description of Example Aspects
Modern digital cameras can record digital images with very high resolution. For example, it is possible to record an image using a 41 Megapixel (Mpx) camera in a smartphone which can provide a very high level of detail. However, as the amount of detail captured in a digital image increases, so generally does the size of the file required to store the image.
If a user wants to take a digital photograph and electronically send it to a friend, for example as an e-mail attachment or by posting it to a social media webpage, then the original image file size of the image may be too large to send the image without first processing it to reduce the file size. For example, some e-mail clients do not allow attachments over 10 Mb to be transmitted.
Further, even if a relatively large file size can be transmitted or stored, this may be undesirable. A larger file may take longer to download/transfer, may take a longer time to be displayed, and may require a larger amount of memory for storage than a smaller sized file. Further, it may not be necessary for a particular image to be photographed/ captured with a very high resolution. Taking a photograph at a lower resolution may still allow the image to be detailed enough that the various different features in the image are clear, and may provide an image having a more manageable file size.
It may be difficult to determine what level of processing is required for a particular image, for example which would give a file size small enough for transmission and allow for quick download and loading times, while retaining captured details in the image. Automatically applying, for example, a "reduce file size to 10Mb" process may cause details in a very detailed and complex image to be lost. However, automatically applying the same "reduce file size to 10Mb" process to a very simple image may cause the image to be reduced to a file size which is still much larger than it needs to be for the details in the image to be clearly displayed.
It may be possible for a user to process digital images in an image editing application, for example to crop the image, reduce the number of pixels, or otherwise create a copy of the image with a smaller file size. This approach may require the user to have skill and knowledge in operating such an image editing application. This approach also may not be practical if the user is using, for example, a digital camera or smartphone (or other handheld electronic device) to capture, process and send the images. A laptop or desktop computer having a larger display and, for example, a physical keyboard and mouse may make editing images using an image editing application easier than the user interface of a handheld device.
Examples discussed herein may be considered to, for an original electronic image having an original image area, create a plurality of smaller image copies each having respective different smaller image areas than the original image area. At least one region of detail in the original electronic image may be identified. The region of detail in the original electronic image may be compared with the respective corresponding areas of detail in the smaller image copies. Based on the comparisons a set of the plurality of smaller image copies may be identified. The smaller image copies in the set may have a level of detail in the respective corresponding areas corresponding to a predetermined similarity criterion. A smaller image copy from the set may be prioritised according to the predetermined similarity criterion. Other examples depicted in the figures have been provided with reference numerals that correspond to similar features of earlier described examples. For example, feature number 100 can also correspond to numbers 200, 300 etc. These numbered features may appear in the figures but may not have been directly referred to within the description of these particular examples. These have still been provided in the figures to aid understanding of the further examples, particularly in relation to the features of similar earlier described examples.
Figure 1 shows an apparatus 100 comprising memory 107, a processor 108, input I and output O. In this example only one processor and one memory are shown but it will be appreciated that other examples may utilise more than one processor and/or more than one memory (e.g. same or different processor/memory types).
In this example the apparatus 100 is an Application Specific Integrated Circuit (ASIC) for a portable electronic device with a touch sensitive display. In other examples the apparatus 100 can be a module for such a device, or may be the device itself, wherein the processor 108 is a general purpose CPU of the device and the memory 107 is general purpose memory comprised by the device. The display, in other examples, may not be touch sensitive. The input I allows for receipt of signalling to the apparatus 100 from further components, such as components of a portable electronic device (like a touch-sensitive or hover- sensitive display) or the like. The output O allows for onward provision of signalling from within the apparatus 100 to further components such as a display screen, speaker, or vibration module. In this example the input I and output O are part of a connection bus that allows for connection of the apparatus 100 to further components. The processor 108 is a general purpose processor dedicated to executing/processing information received via the input I in accordance with instructions stored in the form of computer program code on the memory 107. The output signalling generated by such operations from the processor 108 is provided onwards to further components via the output O.
The memory 107 (not necessarily a single memory unit) is a computer readable medium (solid state memory in this example, but may be other types of memory such as a hard drive, ROM, RAM, Flash or the like) that stores computer program code. This computer program code stores instructions that are executable by the processor 108, when the program code is run on the processor 108. The internal connections between the memory
107 and the processor 108 can be understood to, in one or more examples, provide an active coupling between the processor 108 and the memory 107 to allow the processor
108 to access the computer program code stored on the memory 107. In this example the input I, output O, processor 108 and memory 107 are all electrically connected to one another internally to allow for electrical communication between the respective components I, O, 107, 108. In this example the components are all located proximate to one another so as to be formed together as an ASIC, in other words, so as to be integrated together as a single chip/circuit that can be installed into an electronic device. In other examples one or more or all of the components may be located separately from one another.
Figure 2 depicts an apparatus 200 of a further example, such as a mobile phone. In other examples, the apparatus 200 may comprise a module for a mobile phone (or PDA or audio/video player), and may just comprise a suitably configured memory 207 and processor 208.
The example of figure 2 comprises a display device 204 such as, for example, a liquid crystal display (LCD), e-lnk or touch-screen user interface. The apparatus 200 of figure 2 is configured such that it may receive, include, and/or otherwise access data. For example, this example 200 comprises a communications unit 203, such as a receiver, transmitter, and/or transceiver, in communication with an antenna 202 for connecting to a wireless network and/or a port (not shown) for accepting a physical connection to a network, such that data may be received via one or more types of networks. This example comprises a memory 207 that stores data, possibly after being received via antenna 202 or port or after being generated at the user interface 205. The processor 208 may receive data from the user interface 205, from the memory 207, or from the communication unit 203. It will be appreciated that, in certain examples, the display device 204 may incorporate the user interface 205. Regardless of the origin of the data, these data may be outputted to a user of apparatus 200 via the display device 204, and/or any other output devices provided with apparatus. The processor 208 may also store the data for later use in the memory 207. The memory 207 may store computer program code and/or applications which may be used to instruct/enable the processor 208 to perform functions (e.g. read, write, delete, edit or process data).
Figure 3 depicts a further example of an electronic device 300 comprising the apparatus 100 of figure 1 . The apparatus 100 can be provided as a module for device 300, or even as a processor/memory for the device 300 or a processor/memory for a module for such a device 300. The device 300 comprises a processor 308 and a storage medium 307, which are connected (e.g. electrically and/or wirelessly) by a data bus 380. This data bus 380 can provide an active coupling between the processor 308 and the storage medium 307 to allow the processor 308 to access the computer program code. It will be appreciated that the components (e.g. memory, processor) of the device/apparatus may be linked via cloud computing architecture. For example, the storage device may be a remote server accessed via the internet by the processor. The apparatus 100 in figure 3 is connected (e.g. electrically and/or wirelessly) to an input/output interface 370 that receives the output from the apparatus 100 and transmits this to the device 300 via data bus 380. Interface 370 can be connected via the data bus 380 to a display 304 (touch-sensitive or otherwise) that provides information from the apparatus 100 to a user. Display 304 can be part of the device 300 or can be separate. The device 300 also comprises a processor 308 configured for general control of the apparatus 100 as well as the device 300 by providing signalling to, and receiving signalling from, other device components to manage their operation.
The storage medium 307 is configured to store computer code configured to perform, control or enable the operation of the apparatus 100. The storage medium 307 may be configured to store settings for the other device components. The processor 308 may access the storage medium 307 to retrieve the component settings in order to manage the operation of the other device components. The storage medium 307 may be a temporary storage medium such as a volatile random access memory. The storage medium 307 may also be a permanent storage medium such as a hard disk drive, a flash memory, a remote server (such as cloud storage) or a non-volatile random access memory. The storage medium 307 could be composed of different combinations of the same or different memory types.
Figures 4a-4c illustrate examples of an original electronic image 400 which can be processed using an apparatus/device as claimed. Figure 4a shows an original electronic image 400 having an original image area, which is "x" wide 404 by "y" high 406. The image 400 may be displayed on a screen of the apparatus/device, for example. The area of the image 400 may be quantified in different ways, such as the number of pixels (e.g., "x" may be 1280 pixels and "y" may be 960 pixels, giving a 1 .2 Mpx image) or the dimensions in inches (in), centimetres, or other unit of length (e.g., "x" may be 4.2 in and "y" may be 3.2 in).
A plurality of smaller image copies 410, 420, 430, 440 (four in this example) has been created from the original electronic image 400 as shown in figure 4b. Each of the smaller image copies 410, 420, 430, 440 has a respective different smaller image area than the original image area. The image copies 410, 420, 430, 440 are shown in order of decreasing area (that is, in order of increasing image compression) from left to right in figure 4b.
A region of detail 402 in the original electronic image has been identified as the region on the left hand side which shows a series of near-vertical dark lines separated by narrow light lines. This region 402 of the image 400 may be considered to contain the highest level of detail in the image because this region shows the thinnest lines in the image, which are separated by the smallest distance of features in the overall image. Thus, as discussed below, as the overall resolution of the image 400 gradually decreases across the series of smaller images copies 410, 420, 430, 440, the details in the identified region of detail 402 are the first details to be lost in the whole image 400.
In this example, the smaller image copies 410, 420, 430, 440 are expanded/stretched to have an area corresponding to the area of the original electronic image , Figure 4c shows the first smaller image copy 410 has been expanded to form a first expanded image copy 412, the second smaller image copy 420 has been expanded to form a second expanded image copy 422, the third smaller image copy 430 has been expanded to form a third expanded image copy 432 and the fourth smaller image copy 440 has been expanded to form a fourth expanded image copy 442.
The region of detail 402 in the original electronic image 400 is compared with the respective corresponding areas of detail 414, 424, 434, 444 in the smaller image copies 412, 422, 432, 442. Based on the comparisons, a set of the plurality of smaller image copies is identified, which in this case is a subset of image copies which includes the first and second image copies 412, 422 and excludes the third and fourth smaller image copies 432, 442. In other examples, a prioritised list of some or all of the created image copies 412, 422, 432, 442 may be provided for selection, which allows a user to select the desired image copy from the list. In some examples, some image copies from the set of image copies may be omitted from presentation/selection as they are already determined to be inadequate/too low quality according to the similarity criterion. In this case a subset of image copies (that is, a partial portion of the set of all image copies) is presented to the user for selection. In other cases, even inadequate images may be provided for selection but prioritised with a lower ranking than higher quality image copies.
The apparatus in this example is configured to compare the region of detail 402 in the original electronic image 400 with the corresponding areas of detail 414, 424, 434, 444 in the smaller image copies 412, 422, 432, 442 by matching a pattern in the region of detail 402 in the original electronic image 400 with corresponding patterns 414, 424, 434, 444 in the areas of detail in the smaller image copies 412, 422 432, 442.
The smaller image copies 412, 422 in the set have a level of detail in the respective corresponding areas 414, 424 corresponding to a predetermined similarity criterion determined by the comparison.
It can be seen that, as the area of the image copy 412, 422, 432, 442 decreases, the resolution of the images decreases, which is particularly evident in the regions of detail 414, 424, 434, 444 corresponding to the region of detail 402 identified in the original electronic image 400. The predetermined similarity criterion in this example is whether or not a series of nine distinct vertical dark lines separated by light narrow bands 402 can be resolved in the smaller image copies as it can in the original image 400. This is true for the first and second image copies 412, 422 but not for the third and fourth image copies 432, 442. The vertical lines in the region of detail 402 are still visible in the first smaller image copy 412, and still just visible in the second image copy 422, but are not resolved in the third and fourth image copies 432, 442, where the vertical lines appear to blend into each other to form a fuzzy variable contrast band. The third and fourth image copies 432, 442 are determined to be of too low a quality (due to the higher level of compression applied compared with the other image copies included in the set). The first and second image copes 414, 424 are determined to be of a good enough quality, since the most detailed regions of these image copies 414, 424 matches the corresponding area in the original image 400.
In some examples, depending on user preferences and/or on the particular characteristics of the image being processed, the predetermined similarity criterion may be a match between the original electronic image and a smaller image copy of above one or more of the following matching thresholds: 50%, 60%, 70%, 80%, 85%, 90%, 95%, or 99%. Of course other thresholds may be used and may be set by a user in some examples. In another example, depending on user preferences, and/or on the particular characteristics of the image being processed, the predetermined similarity criterion is a loss of detail between the original electronic image and a smaller image copy of below one or more of the following loss thresholds: 50%, 40%, 30%, 20%, 15%, 10%, 5%, and 1 %. Of course other thresholds may be used and may be set by a user in some examples
For example, the apparatus may compare each pixel across the respective regions of detail of the original image and a smaller image copy. If, for example, the predetermined similarity criterion requires a match above 80%, then at least 80% of each pair of pixels (one in the original image, the other corresponding pixel in the smaller image copy) must be considered to match. A match may be found if, for example, each pixel from the two images has matching colour, hue and/or saturation values within a particular tolerance (for example, within ±5% of the full value range).
The apparatus may be configured to select a particular pattern matching algorithm for use in matching the patterns in the regions of detail of the original image 400 and the smaller image copies 412, 422 432, 442 depending on the type of detail. For example, a different pattern matching algorithm may be better suited depending on if the region of detail includes a high contrast variation per unit area for the image, a high number of different colours per unit area for the image, a high saturation variation per unit area for the image, or a high brightness variation per unit area of the image, for example. The apparatus may be configured to identify the region of detail according to: a high contrast variation compared with the average contrast variation for the entire original electronic image; a high colour value variation compared with the average colour value variation for the entire original electronic image; a high saturation variation compared with the average saturation variation for the entire original electronic image; and/or a high brightness variation compared with the average brightness variation for the entire original electronic image. It may be imagined that, dependent on the subject matter of the image and how the photograph was captured (e.g. using a flash, in low light, with application of a visual effect), different characteristics of that image may be analysed and used to determine a suitable way of identifying a region of detail in that particular image. A high colour image of a vase of mixed tropical flowers may be analysed according to colour, whereas a muted image in low light of a beach party with a bonfire may be analysed according to luminosity variations, for example.
A particular smaller image copy 422 in this example is prioritised from the set according to the predetermined similarity criterion. In this example, the smaller image copy is selected as being the image copy having a high enough resolution that the detail can be observed (i.e. which meets the predetermined similarity criterion), and has the smallest file size necessary to achieve this resolution. Thus the smallest sized file 422 from the set is prioritised.
In other examples, more than one smaller image copies may be prioritised, such as both the smaller image copies 412, 422 in the set of this example.
In some examples, a user may be able to select the image copy they wish to use from a set. The set may be presented for display to a user. For example, the user may determine that he would rather not choose the image copy having the smallest file size and would rather obtain a better quality of image at the cost of increasing file size. He may be keeping the photo for his own collection, or he may be particularly happy with the photograph, for example. The apparatus may therefore be considered to allow for the prioritisation of one or more smaller image copies which fulfil the criteria of matching the original image copy to a particular desired level (governed by the predetermined similarity criterion) in this example.
In some examples after prioritising one or more smaller image copies from the set, the apparatus may prompt the user to select one image from that set according to a selection criterion. For example, the user may be prompted to either select the best quality image in the set, the smaller file size copy in the set, and/or may be presented with (e.g., zoomable) thumbnail images of the images in the set to select a particular one according to the user's requirements. Figure 5a illustrates a schematic example of creating smaller image copies 510, 520, 530 from an original electronic image 500. In this example, the original electronic image 500 has an area of 800 units2, being 40 units wide by 20 units high (the units may be pixels, inches, or centimetres, for example). In the figures the squares in the bottom left corner each represent 1 unit2, and the larger squares elsewhere represent an area 25 units2. The image area may be determined as the number of pixels across the width multiplied by the number of pixels along the height of the original electronic image or a respective smaller image copy.
Smaller image copy 510 has an area of 450 units2, being 30 units wide by 15 units high, smaller image copy 520 has an area of 200 units2, being 20 units wide by 10 units high and smaller image copy 530 has an area of 50 units2, being 10 units wide by 5 units high. In this example the aspect ratio (2:1 ) of the image has been maintained in creating the smaller image copies 510, 520, 530. In other examples, the aspect ratio may be changed between the original and one or more of the smaller image copies, for example if a portion of an image is cropped away or the image is stretched in one direction.
Figure 5b illustrates schematically that a smaller image copy may be created by sub- sampling the pixels in the original electronic image. The smaller image copy may be formed from the sub-sampled pixels, thereby having fewer pixels than the original electronic image.
The original electronic image 550 is 16 pixels wide by 8 pixels high. The image is formed from black pixels 566 on a white background. Each pixel 562, 564 in the image is either white or black. In this example, the pixels 562, 564 of the original electronic image 550 are sub-sampled by selecting every alternate pixel 564 (indicated by hatched lines) and discarding every other alternate pixel 562. The resulting smaller image copy 580 is a sub- sampled version of the original electronic image 550. The original image shown in black pixels 566 can still be seen in the smaller image copy 580 but at lower resolution. This is only one example of sub-sampling and other sub-sampling methods may be used, for example which reduce the number of different colours, saturation values and/or brightness values in an image. Figure 6 illustrates one example of how an apparatus may be configured to identify the region or regions of detail in an image. Figure 6 shows an image 600 which has been notionally split into a grid of sample regions 602. The apparatus may scan over the original electronic image 600, in this example by performing a raster scan 606 starting 604 at the top left corner and finishing 608 in the bottom left corner. The apparatus (e.g., periodically) quantifies the level of detail in the original electronic image during the scan, which in this example is done by determining the level of detail at each sample region 602. The area or areas having a representative level of detail are identified.
In other examples, the apparatus may consider a frame of a particular size (for example, the size of a sample region 602 shown in figure 6). The apparatus may scan the frame over the original electronic image to periodically sample the level of detail present within that frame. Different frame positions may overlap each other horizontally and/or vertically. An area of representative detail may then be identified which is not restricted to a predetermined grid position as in figure 6. In another example, the apparatus may randomly select a portion of the image to sample the level of detail at that location, to determine an area of representative detail after a predetermined number of samples.
In another example, the area of representative detail may vary in size dependent on the particular image being analysed. An image with many small features (e.g., an image of a crowd at a concert) may have one or more small areas of representative detail, whereas an image with a few large features (e.g., a portrait photograph of two friends) may have a large area of representative detail.
The representative level of detail may represent the highest level of detail in the original electronic image. This may help to ensure that all the features in the captured image are rendered resolvable in the smaller image copies. By ensuring the most detailed region(s) match the corresponding detailed region(s) in the original image, then the other less- detailed regions will also likely have a resolution which matches (according to a predetermined similarity criterion) that of the original image.
The level of representative detail may not necessarily be an area showing the highest level of detail in an image. For example, as shown in figure 7a, if an image 700 includes several detailed motifs such as birds 702, branches 704, and plants 706, an area 708, 710, 712 capturing some of these detailed motifs may be selected as a representative area of detail, and the most detailed such area need not necessarily be identified. In certain cases, a user may be asked to identify which details are to be used in the comparison so that these details are likely to be sufficiently retained in the smaller image copies. Features may be selected, for example, by user confirmation of possible features 702, 704, 706, or by free user selection, for example achieved by dragging a selection box around a feature or features of interest.
In some examples more than one area of detail may be selected for comparison between the original electronic image and the image copies. Doing so may improve the image copies selected for inclusion in the set and may improve the prioritisation of a smaller image copy from the set by acting as a repeat test based on different detail criteria (a different area of detail).
The representative level of detail may represent a mid-level of detail which, if reduced, would render the image indistinct. As another example, as shown in figure 7b, if an image 750 contains relatively few sharp details, such as a photograph of the sky 752 with clouds 754 over the horizon 756, then an area of representative detail may be an area 758 including both cloud and sky (as there would be a high level of colour difference compared with the rest of the image) but such an area may not be the most detailed region of the image. The level of detail in the clouds 754 and sky 752 is required to match (to a predetermined similarity criterion) the corresponding level of detail in the original image; otherwise the image as a whole would be rendered indistinct.
If, for example, some small birds 760 are also present in the photograph, then that area of the image could be considered the most detailed region of the image, but not be representative of the level of detail in the image as a whole. For example, a user may be interested in capturing the details of the sky 752 but not be interested in capturing the details of the birds 760. If an area covering the birds 760 was selected as the area of detail, then smaller image copies selected for inclusion in the set may meet a predetermined similarity criterion with respect the detailed birds, but the rest of the image (i.e. the majority of the image which the user is interested in) may still be rendered at a resolution which is much higher than that required to resolve the details of the sky, thus creating a smaller image copy of a size which is larger than it needs to be to capture the bulk of the image 750. Thus, user identification of features may be advantageous. In some examples, the apparatus may identify a plurality of prioritised smaller copies having respective levels of detail in the respective corresponding areas corresponding to the predetermined similarity criterion. For example, an apparatus may create ten smaller image copies from an original electronic image, and after analysing an area of detail between each smaller image copy and the original electronic image, identify six smaller image copies for inclusion in a set meeting a predetermined similarity criterion. From this set of six image copies, the apparatus may prioritise more than one smaller image copy, for example if two copies provide a similar level of detail match with the original image but have been processed in different ways (e.g., different sub-sampling techniques have been used, or different pattern matching algorithms have been used). In some examples the apparatus may be configured to identify a prioritised smaller copy which has the smallest file size of the prioritised smaller copies in the plurality. This may aid data transfer between devices and data upload/download/loading times. In some examples the apparatus may be configured to identify a prioritised smaller copy which has the highest level of detail of the prioritised smaller copies in the plurality. This may improve the resultant image quality.
In the above examples, the user may wish to obtain a smaller image copy from an original electronic image so that storage space in a memory is not taken up by storing image details which are not considered necessary. The user may also, or alternatively, wish to transmit an image to a third party, for example by near field communication (NFC) with a friend's electronic device, by sending the image as an attachment to an e-mail, MMS, or chat message, or by uploading the image to a website or social media application, for example.
Based on a selected method of transmission of an electronic file to a third party the apparatus disclosed herein may be configured to create the plurality of smaller image copies such that each image copy has a file size which is less than or equal to the maximum file size associated with the selected method of transmission. Thus, for example, the apparatus may identify an upper file size limit according to the method by which the image will be transmitted to a third party, and may not create smaller image copies of an original electronic image which exceed that file size limit, thereby saving processing power in creating smaller image copies which are too big to transmit by the user's desired method.
After prioritising a smaller image copy, the apparatus may be configured to repeat the process over a smaller range of image copies having respective sizes just above and just below that of the prioritised image copy. Such a "fine adjustment" may be useful to identify a smaller image copy having a particular level of detail and/or a particular file size more accurately. Figure 8a shows an example of an apparatus 800 in communication with a remote server. Figure 8b shows an example of an apparatus 800 in communication with a "cloud" for cloud computing. In figures 8a and 8b, apparatus 800 (which may be apparatus 100, 200 or 300) is also in communication with a further apparatus 802. The apparatus 802 may be a touch screen display for example. In other examples, the apparatus 800 and further apparatus 802 may both be comprised within a device such as a portable communications device or PDA. Communication may be via a communications unit, for example.
Figure 8a shows the remote computing element to be a remote server 804, with which the apparatus 800 may be in wired or wireless communication (e.g. via the internet, Bluetooth, NFC, a USB connection, or any other suitable connection as known to one skilled in the art). In figure 8b, the apparatus 800 is in communication with a remote cloud 810 (which may, for example, be the Internet, or a system of remote computers configured for cloud computing). For example, the original electronic image and/or the smaller image copies may be stored remotely and be accessible by the apparatus 800. As another example, the apparatus 800 may perform the comparison between the regions of detail in the images by running comparison/pattern matching calculations at a remote server 804/cloud 810 and accessing the calculation results identification of a set of smaller image copies. In other examples the remote server 804/cloud 810 may store comparison results for future reference by the apparatus. For example, when analysing similar images in the future, the results obtained from a past analysis may be accessed at the remote server 804/cloud 810 and used to speed up future analysis.
Figure 9a illustrates a method 900 according to an example of the present disclosure. The method comprises, for an original electronic image having an original image area, creating a plurality of smaller image copies each having respective different smaller image areas than the original image area 902; identifying at least one region of detail in the original electronic image 904; comparing the region of detail in the original electronic image with the respective corresponding areas of detail in the smaller image copies 906; based on the comparisons, identifying a set of the plurality of smaller image copies, the smaller image copies in the set having a level of detail in the respective corresponding areas corresponding to a predetermined similarity criterion 908; and prioritising a smaller image copy from the set according to the predetermined similarity criterion 910.
Figure 10 illustrates schematically a computer/processor readable medium 1000 providing a program according to an example of this disclosure. In this example, the computer/ processor readable medium is a disc such as a Digital Versatile Disc (DVD) or a compact disc (CD). In other examples, the computer readable medium may be any medium that has been programmed in such a way as to carry out the functionality herein described. The computer program code may be distributed between the multiple memories of the same type, or multiple memories of a different type, such as ROM, RAM, flash, hard disk, solid state, etc.
Any mentioned apparatus/device/server and/or other features of particular mentioned apparatus/device/server may be provided by apparatus arranged such that they become configured to carry out the desired operations only when enabled, e.g. switched on, or the like. In such cases, they may not necessarily have the appropriate software loaded into the active memory in the non-enabled (e.g. switched off state) and only load the appropriate software in the enabled (e.g. on state). The apparatus may comprise hardware circuitry and/or firmware. The apparatus may comprise software loaded onto memory. Such software/computer programs may be recorded on the same memory/processor/functional units and/or on one or more memories/processors/ functional units. In some examples, a particular mentioned apparatus/device/server may be preprogrammed with the appropriate software to carry out desired operations, and wherein the appropriate software can be enabled for use by a user downloading a "key", for example, to unlock/enable the software and its associated functionality. Advantages associated with such examples can include a reduced requirement to download data when further functionality is required for a device, and this can be useful in examples where a device is perceived to have sufficient capacity to store such pre-programmed software for functionality that may not be enabled by a user.
Any mentioned apparatus/circuitry/elements/processor may have other functions in addition to the mentioned functions, and that these functions may be performed by the same apparatus/circuitry/elements/processor. One or more disclosed aspects may encompass the electronic distribution of associated computer programs and computer programs (which may be source/transport encoded) recorded on an appropriate carrier (e.g. memory, signal).
Any "computer" described herein can comprise a collection of one or more individual processors/processing elements that may or may not be located on the same circuit board, or the same region/position of a circuit board or even the same device. In some examples one or more of any mentioned processors may be distributed over a plurality of devices. The same or different processor/processing elements may perform one or more functions described herein. The term "signalling" may refer to one or more signals transmitted as a series of transmitted and/or received electrical/optical signals. The series of signals may comprise one, two, three, four or even more individual signal components or distinct signals to make up said signalling. Some or all of these individual signals may be transmitted/received by wireless or wired communication simultaneously, in sequence, and/or such that they temporally overlap one another.
With reference to any discussion of any mentioned computer and/or processor and memory (e.g. including ROM, CD-ROM etc), these may comprise a computer processor, Application Specific Integrated Circuit (ASIC), field-programmable gate array (FPGA), and/or other hardware components that have been programmed in such a way to carry out the inventive function.
The applicant hereby discloses in isolation each individual feature described herein and any combination of two or more such features, to the extent that such features or combinations are capable of being carried out based on the present specification as a whole, in the light of the common general knowledge of a person skilled in the art, irrespective of whether such features or combinations of features solve any problems disclosed herein, and without limitation to the scope of the claims. The applicant indicates that the disclosed aspects/examples may consist of any such individual feature or combination of features. In view of the foregoing description it will be evident to a person skilled in the art that various modifications may be made within the scope of the disclosure.
While there have been shown and described and pointed out fundamental novel features as applied to examples thereof, it will be understood that various omissions and substitutions and changes in the form and details of the devices and methods described may be made by those skilled in the art without departing from the scope of the disclosure. For example, it is expressly intended that all combinations of those elements and/or method steps which perform substantially the same function in substantially the same way to achieve the same results are within the scope of the disclosure. Moreover, it should be recognized that structures and/or elements and/or method steps shown and/or described in connection with any disclosed form or examples may be incorporated in any other disclosed or described or suggested form or example as a general matter of design choice. Furthermore, in the claims means-plus-function clauses are intended to cover the structures described herein as performing the recited function and not only structural equivalents, but also equivalent structures. Thus although a nail and a screw may not be structural equivalents in that a nail employs a cylindrical surface to secure wooden parts together, whereas a screw employs a helical surface, in the environment of fasten wooden parts, a nail and a screw may be equivalent structures.

Claims

1 . An apparatus comprising:
at least one processor; and
at least one memory including computer program code,
the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following:
for an original electronic image having an original image area, create a plurality of smaller image copies each having respective different smaller image areas than the original image area;
identify at least one region of detail in the original electronic image;
compare the region of detail in the original electronic image with the respective corresponding areas of detail in the smaller image copies;
based on the comparisons, identify a set of the plurality of smaller image copies, the smaller image copies in the set having a level of detail in the respective corresponding areas corresponding to a predetermined similarity criterion; and
prioritise a smaller image copy from the set according to the predetermined similarity criterion.
2. The apparatus of claim 1 , wherein the set comprises a partial selection of the plurality of smaller image copies used in the comparison.
3. The apparatus of claim 1 , wherein the image area is determined as the number of pixels across the width multiplied by the number of pixels along the height of the original electronic image or a respective smaller image copy.
4. The apparatus of claim 1 , wherein the plurality of smaller image copies of the original electronic image are created by sub-sampling the pixels in the original electronic image to form a smaller image copy having fewer pixels than the original electronic image.
5. The apparatus of claim 1 , wherein the apparatus is configured to identify the at least one region of detail in the original electronic image by:
scanning over the original electronic image; and identifying one or more areas of the original electronic image having a representative level of detail by quantifying the level of detail in the original electronic image during the scan.
6. The apparatus of claim 5, wherein the representative level of detail represents the highest level of detail in the original electronic image, or
a mid-level of detail which, if reduced, would render the image indistinct.
7. The apparatus of claim 1 , wherein the apparatus is configured to identify an area having a representative level of detail according to one or more of identifying:
a high contrast variation compared with the average contrast for the entire original electronic image;
a high colour value variation compared with the average colour value variation for the entire original electronic image;
a high saturation variation compared with the average saturation variation for the entire original electronic image; and
a high brightness variation compared with the average brightness variation for the entire original electronic image.
8. The apparatus of claim 1 , wherein the apparatus is configured to compare the region of detail in the original electronic image with the corresponding areas of detail in the smaller image copies by:
expanding the smaller image copies to have an area corresponding to the area of the original electronic image, and
comparing the region of detail in the original electronic image with the corresponding expanded regions of detail in the increased-area image copies.
9. The apparatus of claim 1 , wherein the apparatus is configured to compare the region of detail in the original electronic image with the corresponding areas of detail in the smaller image copies by matching one or more patterns in the region of detail in the original electronic image with corresponding patterns in the areas of detail in the smaller image copies.
10. The apparatus of claim 1 , wherein the predetermined similarity criterion is a match between the original electronic image and a smaller image copy of above one or more of the following matching thresholds: 50%, 60%, 70%, 80%, 85%, 90%, 95%, 99%.
1 1 . The apparatus of claim 1 , wherein the predetermined similarity criterion is a loss of detail between the original electronic image and a smaller image copy of below one or more of the following loss thresholds: 50%, 40%, 30%, 20%, 15%, 10%, 5%, 1 %.
12. The apparatus of claim 1 , wherein the apparatus is configured such that, for a plurality of prioritised smaller copies having respective levels of detail in the respective corresponding areas corresponding to the predetermined similarity criterion, identifying the prioritised smaller copy of the plurality having:
the smallest file size of the prioritised smaller copies in the plurality; or
the highest level of detail of the prioritised smaller copies in the plurality.
13. The apparatus of claim 1 , wherein the apparatus is configured to transmit the prioritised smaller image copy to a third party device.
14. The apparatus of claim 13, wherein, based on a selected method of transmission of an electronic file to a third party, the apparatus is configured to create the plurality of smaller image copies such that each image copy has a file size which is less than or equal to the maximum file size associated with the selected method of transmission.
15. The apparatus according to any preceding claim, wherein the apparatus is one or more of: a portable electronic device, a mobile phone, a smartphone, a tablet computer, a surface computer, a laptop computer, a personal digital assistant, a graphics tablet, a pen- based computer, a digital camera, a watch, a non-portable electronic device, a desktop computer, a monitor/display, a household appliance, a server, or a module for one or more of the same.
16. A method comprising:
for an original electronic image having an original image area, creating a plurality of smaller image copies each having respective different smaller image areas than the original image area;
identifying at least one region of detail in the original electronic image;
comparing the region of detail in the original electronic image with the respective corresponding areas of detail in the smaller image copies;
based on the comparisons, identifying a set of the plurality of smaller image copies, the smaller image copies in the set having a level of detail in the respective corresponding areas corresponding to a predetermined similarity criterion; and
prioritising a smaller image copy from the set according to the predetermined similarity criterion.
17. A computer readable medium comprising computer program code stored thereon, the computer readable medium and computer program code being configured to, when run on at least one processor perform at least the following:
for an original electronic image having an original image area, create a plurality of smaller image copies each having respective different smaller image areas than the original image area;
identify at least one region of detail in the original electronic image;
compare the region of detail in the original electronic image with the respective corresponding areas of detail in the smaller image copies;
based on the comparisons, identify a set of the plurality of smaller image copies, the smaller image copies in the set having a level of detail in the respective corresponding areas corresponding to a predetermined similarity criterion; and
prioritise a smaller image copy from the set according to the predetermined similarity criterion.
PCT/FI2013/050873 2013-09-11 2013-09-11 An apparatus for processing images and associated methods WO2015036648A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/FI2013/050873 WO2015036648A1 (en) 2013-09-11 2013-09-11 An apparatus for processing images and associated methods

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/FI2013/050873 WO2015036648A1 (en) 2013-09-11 2013-09-11 An apparatus for processing images and associated methods

Publications (1)

Publication Number Publication Date
WO2015036648A1 true WO2015036648A1 (en) 2015-03-19

Family

ID=49274670

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FI2013/050873 WO2015036648A1 (en) 2013-09-11 2013-09-11 An apparatus for processing images and associated methods

Country Status (1)

Country Link
WO (1) WO2015036648A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7650037B2 (en) * 2003-04-29 2010-01-19 Canon Kabushiki Kaisha Selection of the decoding size of a multiresolution image
WO2010131167A1 (en) * 2009-05-13 2010-11-18 Koninklijke Philips Electronics N.V. A display apparatus and a method therefor
US20110093492A1 (en) * 2000-07-24 2011-04-21 Sanghoon Sull System and Method for Indexing, Searching, Identifying, and Editing Multimedia Files
US8214766B1 (en) * 2008-07-09 2012-07-03 Adobe Systems Incorporated Method and system for preview control for image adjustment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110093492A1 (en) * 2000-07-24 2011-04-21 Sanghoon Sull System and Method for Indexing, Searching, Identifying, and Editing Multimedia Files
US7650037B2 (en) * 2003-04-29 2010-01-19 Canon Kabushiki Kaisha Selection of the decoding size of a multiresolution image
US8214766B1 (en) * 2008-07-09 2012-07-03 Adobe Systems Incorporated Method and system for preview control for image adjustment
WO2010131167A1 (en) * 2009-05-13 2010-11-18 Koninklijke Philips Electronics N.V. A display apparatus and a method therefor

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CHEN L-Q ET AL: "A VISUAL ATTENTION MODEL FOR ADAPTING IMAGES ON SMALL DISPLAYS", MULTIMEDIA SYSTEMS, ACM, NEW YORK, NY, US, vol. 9, no. 4, 1 October 2003 (2003-10-01), pages 353 - 364, XP001196335, ISSN: 0942-4962, DOI: 10.1007/S00530-003-0105-4 *

Similar Documents

Publication Publication Date Title
US9558591B2 (en) Method of providing augmented reality and terminal supporting the same
RU2651240C1 (en) Method and device for processing photos
RU2639651C2 (en) Image identification and organization according to model without user intervention
CN104303146B (en) The entrance of image related application in mobile device
US9389758B2 (en) Portable electronic device and display control method
US10847073B2 (en) Image display optimization method and apparatus
KR101725884B1 (en) Automatic processing of images
CN104410785A (en) An information processing method and electronic device
CN110100251A (en) For handling the equipment, method and graphic user interface of document
JP2015220616A (en) Electronic apparatus
US20170046813A1 (en) An apparatus and associated methods for image capture
KR20140125983A (en) Operating Method And Electronic Device thereof
CN111221457A (en) Method, device and equipment for adjusting multimedia content and readable storage medium
KR20140125984A (en) Image Processing Method, Electronic Device and System
KR102260805B1 (en) Image searching device and method thereof
US20140325451A1 (en) Icon change method and apparatus
KR102063434B1 (en) Apparatus for displaying thumbnail image and method thereof
CN108111763B (en) Image processing method, image processing device, storage medium and electronic equipment
US9767533B2 (en) Image resolution enhancement based on data from related images
TW201608385A (en) Methods and systems for media collaboration groups
WO2015196681A1 (en) Picture processing method and electronic device
US9047795B2 (en) Methods and devices for providing a wallpaper viewfinder
TW201608398A (en) Methods and systems for image based searching
US10958955B1 (en) System for generating modified video output
KR102150905B1 (en) Method for photographing based on WiFi Direct and electronic device performing thereof

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13770957

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13770957

Country of ref document: EP

Kind code of ref document: A1