Skip to main content

CCTV object detection with fuzzy classification and image enhancement


In this paper we propose a novel approach for pattern recognition problems with non-uniform classes of images. The main concept of this classification method is to describe classes of images with their fuzzy portraits. This approach is a good generalization of the algorithm. The fuzzy set is calculated as a preliminary result of the algorithm before the final decision or rejection that solves the problem of uncertainty at the boundaries of classes. We use the method to solve the problem of knife detection in still images. The main aim of this paper is to test fuzzy classification with feature vectors in a real environment. We used selected MPEG-7 descriptor schemes as feature vectors. The method was experimentally validated on a dataset of over 12,000 images. The article describes the results of six experiments which confirm the accuracy of our method. In addition we conducted a test with enhanced images, achieved with two state-of-the-art super-resolution algorithms.


The concept of automated image understanding is common in public safety applications and it has been explored extensively in many domains. It is an active research topic not only in the computer vision domain [16]. The next step is the detection of dangerous situations based on recordings from IP surveillance cameras. This paper deals with analyzing video footage obtained using CCTV systems. There are various problems associated with analyzing potentially dangerous situations. A knife held in the human hand is an example of a signal of danger. Such scenes are generally dynamic and quick. Our aim is to solve the problem of knife recognition in frames from camera video sequences.

There are several known approaches to knife detection. Żywicki et al. proposed a method based on a simple wavelet classifier using Haar cascades [21]. Kmieć et al. presented an algorithm involving the active appearance model (AAM) [8, 9]. The AAM takes into account the sharpness of the blade, and detects corners in images containing knives. The final results of the method were presented in [4] on a small dataset. Maksimova used the geometrical approach in her study published in [14]. The methods work with images pixel by pixel, which is inefficient in many cases. The approach of representing the image as a set of feature vectors using MPEG-7 descriptors is introduced in this paper.

In prior studies, an adequate algorithm accuracy was only achieved for simple examples when the knife is clearly visible in the image. For more difficult situations, when the blade reflects light reducing its visibility or the knife is turned edgewise to the frame, the quality of the algorithm is poor. We used a single frame from the sequence to achieve conditions approaching reality in which only some frames are of sufficiently high quality. Finally, we tested the algorithm with artificially enhanced images from CCTV footage.

Methods of object identification in images are distinguished by high numbers of false positives. Quality can be estimated more effectively by multi-valued truth-space used in fuzzy logic theory [11]. In such case, the result of the classification algorithm is an information vector with a degree of confidence for the object assigned to a particular class. Methods of pattern recognition that use fuzzy sets are known as fuzzy classifiers [12]. Approaches to creating fuzzy classifiers include tuning knowledge databases using evolutionary methods [6], applying FuzzyLVQ (fuzzy learning vector quantization) and FSOM (fuzzy self-organizing map) networks [3], and using fuzzy clustering methods [2]. We use the fuzzy clustering approach extended for the pattern recognition problem.

The paper is organized as follows: Section 2 describes the feature vectors, Section 3 introduces the inference model based on the fuzzy classification method, Section 4 contains experimental verification of the approach, and Section 5 is the conclusion.

MPEG-7 feature vectors

Cropped images were obtained from CCTV camera footage. They were scanned with a sliding window of size W × H, so we solved the problem for these W × H fragments of original images. We treated the problem as a pattern recognition one. The database consists of two classes of images: positive examples (PE) if the image features a knife (Fig. 1 a), and negative examples (NE) in all other cases (Fig. 1 b). The images were taken indoors or through car windows, since carrying knives in public is illegal in Poland.

Fig. 1

Example images: a positive example, b negative example

Current literature describes many different visual descriptors with their advantages and disadvantages [1]. We used visual descriptors from the MPEG-7 standard. Because of the issues specific to recognizing knives in images, we chose two descriptors: edge histogram [19] and homogeneous texture [18]. The former, containing information about various types of edges in the image, is a numerical vector comprising 80 types of edges. The latter describes specific image patterns: directionality, coarseness and regularity. The two descriptors provide us with information about features characteristic of knives. We avoid using color and shape descriptors because of light reflections and the high number of knife types. Descriptors based on keypoint matching (such as SIFT or SURF) also do not provide good results. The majority of keypoints are detected in the background part of the image rather than in the knife itself. The MPEG-7 feature vectors described are used to build the model presented in this work.

Fuzzy classification model

To create a model for knife detection, we considered the specifics of the problem and the presentation of images using MPEG-7. Let us discuss solving the pattern recognition problem in the face of uncertainty [20], where a real-world object (e ∈ O) is represented as a vector of informative features:

$$ x=\left({x}_1,{x}_2,\dots, {x}_m\right), $$

where x i  = f i (e), f i is the method for measuring the i-th feature of the object:

$$ {f}_i:O\to {X}_i, $$

where X i is the assumed region for the feature, due to the nature of the object and its measurement method, X i  ⊂ ℛ, where ℛ is a set of real numbers.

Let Ω be an alphabet of classes of images for the pattern recognition problem:

$$ \Omega ={\left\{{\omega}_j\right\}}_{j=1}^k $$

where ω j is the name of the class of images, j is the element index, and k is their number.

A finite set of samples is known:

$$ Z={\left\{\left({e}_{i,}{o}_i\right)\right\}}_{i=1}^n $$

where e i is the real object, described by the feature vector x (1), i is the element index from the set, n is the number of samples, and o i  ∈ Ω is its label.

Let us construct a classifier as a mapping:

$$ D:X\mapsto \overset{\sim }{\Omega} $$

where Ω is an alphabet of classes of images (3), \( \overset{\sim }{\Omega}\ \mathrm{is}\ \mathrm{t} \) he set of fuzzy subsets over the alphabet of classes, and X = X 1 × X 2 × … × X m is the region of admissible values in the feature vector space of object x, specified in (1). The classification result in this situation will be the fuzzy set:

$$ \overset{\sim }{\alpha }={\displaystyle {\sum}_{i=1}^k}{\alpha}_i\ /{\omega}_i $$

where α i is the degree of similarity between the object x and class of images ω i . To improve the method, the final decision about an object belonging to a given class of images is performed by analyzing the fuzzy set \( \overset{\sim }{\alpha } \),specified in (6).

The clustering algorithm with an unknown number of classes

We propose to carry out a preliminary analysis of the data in order to establish the intra-structure for each class of images. We use the FCM-fuzzy (fuzzy C-means) clustering algorithm [2]. The result of the algorithm is a fuzzy c − partition as matrix U = [u ki ] n × c , where u ki – is the degree of membership x k to cluster i, n – is the number of objects x, and с – is the number of clusters, which is a parameter of the algorithm. Two types of с-partition are used in the work:

$$ {M}_{fcn}=\left\{U\left|\forall k{\displaystyle {\sum}_{i=1}^c}{u}_{ki}=1\right.\right\}, $$
$$ {M}_{hcn}=\left\{U\in {M}_{fcn}\Big|\forall k,i\ {u}_{ki}\in \left\{0,1\right\}\right\} $$

where M fcn – is a fuzzy partition and M hcn – is a crisp c-partition.

Aside from the c –partition U ∈ M fcn , the results of the algorithm are geometrical centers of clusters G = {g i , g 2, …, g c } ⊂ ℛm. The FCM algorithm minimizes the Bezdek-Dann functional:

$$ {J}_{\gamma}^{FCM}\left(U,\boldsymbol{G};X\right)={\displaystyle {\sum}_{k=1}^n}{\displaystyle {\sum}_{i=1}^c}{u}_{ki}^{\gamma }{d}^2\left({\boldsymbol{x}}_k,{\boldsymbol{g}}_i\right)\to \underset{\left\{U,G\right\}}{\underbrace{ \min }} $$

under the constraints:

$$ {\displaystyle {\sum}_{i=1}^c}{u}_{ki}=1,\ \forall {x}_k,k=\overline{1,n,} $$

where γ – fuzziness coefficient, and d 2(x, g) – square of the distance between the element x and the center of the cluster g. Here, Euclidean distance is used. The altering-optimization method is used in the FCM algorithm. It is calculated at each step by the centers of the cluster membership degrees u ki for object x k :

$$ {u}_{ki}={\left({\displaystyle {\sum}_{j=1}^c}{\left(\frac{d\left({\boldsymbol{x}}_k,{\boldsymbol{g}}_i\right)}{d\left({\boldsymbol{x}}_k,{\boldsymbol{g}}_j\right)}\right)}^{\frac{2}{\gamma -1}}\right)}^{-1}, $$

where 1 ≤ i ≤ c, 1 ≤ k ≤ n, and then new centers of clusters by u ki :

$$ {\boldsymbol{g}}_k=\frac{{\displaystyle {\sum}_{\boldsymbol{k}=1}^{\boldsymbol{n}}}\left({u}_{ki}^{\gamma}\bullet {\boldsymbol{x}}_k\right)}{{\displaystyle {\sum}_{\boldsymbol{k}=1}^{\boldsymbol{n}}}{u}_{ki}^{\gamma }} $$

To start with, the algorithm is used to determine the initial values of cluster prototypes. Minimal \( {p}_{1{f}_i} \) and maximal \( {p}_{2{f}_i} \) values are calculated for every feature f i , \( i=\overline{1,m} \), specified in (2) by samples Z, specified in (4):

$$ {\boldsymbol{g}}_{\boldsymbol{k}}={\boldsymbol{p}}_1+\frac{k\left({\boldsymbol{p}}_2-{\boldsymbol{p}}_1\right)}{\left(\mathrm{c}+1\right)}, $$

where \( {\boldsymbol{p}}_1=\left({p}_{1{f}_1},{p}_{1{f}_2},\dots, {p}_{1{f}_m}\right) \), and \( {\boldsymbol{p}}_2=\left({p}_{2{f}_1},{p}_{2{f}_2},\dots, {p}_{2{f}_m}\right) \), 1 ≤ k ≤ c, c – the number of clusters.

The main disadvantage of the FCM algorithm is the requirement to set as a parameter of the algorithm the number of clusters that in the study of data structures is unknown in advance. To solve the problem of finding the optimal number of clusters, the criterion of cluster adequacy is used. Informally, it can be described as the most appropriate cluster structure, which is different for each task. It also implies that the choice of criteria will be different.

Certain criteria of cluster validity exist, with the following considered for the proposed fuzzy model. Bezdek’s partition coefficient is [18]:

$$ {v}_{PC}(U)=\frac{{\displaystyle {\sum}_{k=1}^n}{\displaystyle {\sum}_{i=1}^c}{u}_{ki}^2}{n}, $$

where U – fuzzy с-partition, с – the number of clusters, and n – the number of samples elements. The next property is v PC :

$$ {v}_{PC}=1\iff U\in {M}_{hcn}, $$
$$ {v}_{PC}=\frac{1}{c}\iff U=\left[\frac{1}{c}\right]=\overline{U}, $$

where M hcn is specified in (8), and U – is the fuzziest partition available, since it assigns every point in X with equal membership values \( \frac{1}{c} \) to all c classes. Bezdek’s partition coefficient belongs to the class that uses information about U only, but not information about the data itself, such as G and X.

The Xie-Beni index v XB [18] belongs to the class of validity criteria using the total information (U, G; X):

$$ {v}_{XB}\left(U,\boldsymbol{G};X\right)=\frac{{\displaystyle {\sum}_{\mathrm{i}=1}^{\mathrm{c}}}{\displaystyle {\sum}_{\mathrm{k}=1}^{\mathrm{n}}}{\mathrm{u}}_{\mathrm{k}\mathrm{i}}^2{\mathbf{x}}_{\mathrm{k}}-{{\mathbf{g}}_{\mathrm{i}}}^2}{\mathrm{n}\ \left(\underset{\mathrm{i}\ne \mathrm{j}}{\underbrace{ \min }}\left\{{\mathbf{g}}_{\mathrm{i}}-{{\mathbf{g}}_{\mathrm{j}}}^2\right\}\right)}=\left[\frac{\left(\frac{\upsigma}{\mathrm{n}}\right)}{\mathrm{sep}\left(\mathbf{G}\right)}\right], $$

where σ − is the ratio of the total variation of (U, G), and the separation sep(G) of the vectors G:

$$ \sigma \left(U,\boldsymbol{G};X\right)={\displaystyle {\sum}_{i=1}^c}\left({\displaystyle {\sum}_{k=1}^n}{u}_{ki}^2{\boldsymbol{x}}_k-{{\boldsymbol{g}}_i}^2\right), $$
$$ sep\left(\boldsymbol{G}\right)=\underset{\mathrm{i}\ne \mathrm{j}}{\underbrace{ \min }}\left\{{\boldsymbol{g}}_i-{{\boldsymbol{g}}_j}^2\right\}. $$

The lower value v XB specified in (17) indicates a better partition on X, which is right for γ = 2 [17]. Studies of the influence of the fuzziness coefficient on the Xi-Beni index point to its instability for high values of γ [17].

To find the optimal number of classes, a method based on the scheme presented in Fig. 2 is proposed in [15]. The result is presented as a fuzzy model FP ω = < U, G, X, c > which will be referred to as a fuzzy portrait of a class of images [7] within the general concept proposed by the author, where ω is the class of images from alphabet Ω, specified in (3).

Fig. 2

General scheme of fuzzy model creation

In the scheme, X ω ⊂ ℛm corresponds to the part of input data Z, specified in (4), for elements with o i  = ω; Ν(X ω) : ℛm ↦ [0, 1]m is the normalization procedure for the sample; C FCM is the clustering algorithm presented as function C FCM (X; c, …) : ℛn × m ↦ M fcn , where n is the number of sample elements, M fcn is specified in (7), and с is the parameter of the algorithm that specifies the number of clusters and other options of the FCM algorithm [2, 17]; v* is the validity criterion such as (14) or (17); and \( {U}^1={\left(\underset{n}{\underbrace{1,1,\dots, 1}}\right)}^T \) is the unit vector G 1 = {g 1}, where g 1 is calculated by (12) providing that U = U 1. The range of values is с = 2, 3, …, c max , with \( {c}_{max}\le \sqrt{n} \), where n is the cardinality of the set X ω. The validity criteria are analyzed during the fuzzy model creation step. For criterion (17) the best partition is at the minimal value.

The proposed scheme of intra-class analysis and fuzzy model FP ω creation will be used as part of the classification method (5). It is the set of samples Z (4) whose elements are grouped by membership to classes of Ω such as \( {X}^{\omega_i}=\left\{\left.\left({x}_1,{x}_2,\dots, {x}_m\right)\right|\left({x}_1{x}_2,\dots, {x}_m,{\omega}_i\right)\in Z\right\} \), \( \forall i=\overline{1,K} \). For every class of images a local fuzzy model is created. The method to combine all local models into a single fuzzy model is:

$$ FM=<{\left\{F{P}^{\omega_i}\right\}}_{i=1}^K,D>, $$

where D is the decision making algorithm (5). Next, we define D and show how the problem of pattern recognition is solved under uncertainty using only the information from the model (19).

Decision making method

As a result of algorithm D for object x under conditions of uncertainty is made. According to the statement of the problem considered is a fuzzy set \( \overset{\sim }{\alpha}\in \overset{\sim }{\Omega} \), specified in (6).

The main idea for this method is as follows. The tuning of the classification model is carried out for each class of images separately; however, decision making uses combined data for all classes of images. The advantages of this approach are the transparency of the model and the adaptability of the method to new types of data. It will be considered as the method for decision making \( D\left({x}^{*};FM,\Lambda, \varepsilon \right)=\overset{\sim }{\alpha } \), where FM is the model (19), \( \overset{\sim }{\alpha } \) is the formula (6), \( \Lambda ={\left\{\left({p}_{1{f}_i},{p}_{2{f}_i}\right)\right\}}_{i=1}^m \) is the set of pairs including the minimal \( {p}_{1{f}_i} \) and maximal \( {p}_{2{f}_i} \) values, used for normalization of data, f i is the feature of the object, \( i=\overline{1,m} \), m is the number of features, ε is the threshold value, K is the number of classes, and x* is the new recognizable object. Let us denote the set of cluster centers corresponding to model \( F{P}^{\omega_i} \) as \( {G}^{\omega_i} \) and their number as \( {c}^{\omega_i} \).

  1. Step 1

    Transform x* using Λ with formula:

    $$ \boldsymbol{x}=\frac{{\boldsymbol{x}}^{*}-{\boldsymbol{p}}_1}{{\boldsymbol{p}}_2-{\boldsymbol{p}}_1}, $$

    where p 1 and p 2 as in formula (13).

  2. Step 2

    Calculate α i for every \( {\omega}_i,i=\overline{1,K} \) to have \( \overset{\sim }{\alpha } \) in formula (6). Set ω = ω i , α = α i , \( FP=F{P}^{\omega_i} \). Calculate the distance from x to the nearest center of cluster for class ω by model FP:

    $$ l=\underset{\boldsymbol{g}\in {G}^{\omega }}{ \min}\left(d\left(\boldsymbol{x},\boldsymbol{g}\right)\right), $$

    where d is the distance.

    Determine B ω, which consists of the centers of whole clusters of the model except class ω:

    $$ {B}^{\omega }={\displaystyle \cup \begin{array}{c}\hfill k\hfill \\ {}\hfill j=1\hfill \\ {}\hfill j\ne i\hfill \end{array}}{G}^{\omega_k}, $$

    where i is the index of class ω. Calculate α with the formula:

    $$ \alpha ={\left(1+{\displaystyle {\sum}_{\boldsymbol{g}\in {B}^{\omega }}}\frac{l^2}{d^2\left(\boldsymbol{x},\boldsymbol{g}\right)}\right)}^{-1}, $$

    where l is calculated by (21), B ω is determined in (22), and d is the distance. The formula is the result \( \overset{\sim }{\alpha } \) from formula (6) from α (23) for all classes.

  3. Step 3

    Change \( \overset{\sim }{\alpha } \) by excluding classes with a low membership α i replacing it with the formula:

    $$ {\alpha}_i=\left\{\begin{array}{c}\hfill 0, if\ \alpha <\varepsilon \hfill \\ {}\hfill 1,\ if\ \alpha \ge \varepsilon \hfill \end{array}\right., $$

    where ε is the parameter of the classification method corresponding to the threshold.

  4. Step 4

    Calculate the resulting class of images:

    $$ H\left(\overset{\sim }{\alpha}\right)=\left\{\begin{array}{c}\hfill {\upomega}_{\mathrm{i}},\ if\ \exists !\ \mathrm{i}:{\upalpha}_{\mathrm{i}}=1,\kern0.5em \hfill \\ {}\hfill {\upomega}_0,\ otherwise.\hfill \end{array}\right.\kern1.25em , $$

    where ω0 is an unknown class of images, affiliation to which denotes the rejection option.

Experimental verification

We developed standalone computer software as a practical implementation of the method proposed in the article. The specially designed library for fuzzy classification was developed in C++ and used in this application to create a classification algorithm D, specified as in (5). The application supports learning and test modes of operation. Two sets of samples are used in the experiments:

  • learning samples used to create the model in learning mode,

  • test samples used to estimate the quality of classification in test mode.

A dataset [10] of 12,899 examples of images, including 9340 NE and 3559 PE, was prepared. The alphabet of classes of images is Ω = {NE, PE}. The edge histogram (EH) and homogeneous textures (HT) descriptors were calculated for the whole dataset.

We estimated the classification ability of the descriptors using a pattern recognition method based on histograms [13]. The histograms form a part of the fuzzy classification model (described in detail in Section 3). Example histograms of four features in FCM model are presented for the HT descriptor in Fig. 3 and for the EH descriptor in Fig. 4. The red line corresponds to PE and the green line corresponds to NE; the range of permissible values of features follows the axis of abscissa, and the normalized degree of membership follows the ordinate. The example features originate from our fuzzy classification model. Statistical analysis of the set of samples presented with the HT descriptor shows that this descriptor cannot be used to distinguish classes of images (Fig. 3). The classification was carried out with the EH descriptor since it provides good results of statistical analysis of the images (Fig. 4). A comparison of Figs. 3 and 4 clearly shows the differences between the two descriptors. HT is not able to provide visible classes. As a result, the algorithm based on the fuzzy classification model frequently returns no answers, since it does not have sufficient data to make a decision. The same problem does not apply to EH, and the classes are easily determined as separate pieces of data. This shows that the EH descriptor is suitable for addressing the problem described in this paper, in contrast to HT. Following analysis of all such histograms, we excluded the HT descriptor from further consideration. In the remainder of the article, we present the results of experiments for the EH descriptor which demonstrate the high quality of the algorithm.

Fig. 3

Class histograms in the fuzzy classification model for the HT descriptor during the decision making process. The algorithm cannot determine the classes

Fig. 4

Class histograms in the fuzzy classification model for the EH descriptor during the decision making process. Classes are clearly visible and found by the algorithm

Let us consider the confusion matrix Q to evaluate the quality of algorithm D. Cell q ij of the confusion matrix contains the number of elements from the test sample for which ω i is the right class; the classification result is ω j . Table 1 shows an example of the confusion matrix for the problem with two classes. An artificial class ω 0 is used as the reject option, as in step 4 of the decision making algorithm.

Table 1 Confusion matrix

Let p i be the a priori probability for class ω i , \( i=\overline{1,K} \), \( {\displaystyle {\sum}_{i=1}^K}{p}_i=1 \). To calculate the probability of an event, the algorithm classifies the object belonging to class ω i as an object of class ω j , \( i=\overline{1,K},j=\overline{0,K} \) using the formula:

$$ {p}_{ij}=\frac{q_{ij}}{{\displaystyle {\sum}_{k=0}^K}{q}_{ik}}, $$

where q ij is an element of the confusion matrix, and K is the number of classes.

Two types of error for the algorithm with the reject function are considered. The first type of error is calculated as:

$$ {A}^I={\displaystyle {\sum}_{i=1}^K}{p}_i\left({\displaystyle {\sum}_{\begin{array}{c}\hfill j=1\hfill \\ {}\hfill j\ne i\hfill \end{array}}^K}{p}_{ij}\right), $$

where p i is the probability for class ω i and p ij is calculated by (26). To calculate the probability of an event:

$$ R={\displaystyle {\sum}_{i=1}^K}{p}_i{p}_{i0}, $$

where p i , p i0 are as in (13). The second type of error includes the first type of error and a rejection, and is calculated as:

$$ {A}^{II}={A}^I+R $$

We conducted a series of experiments on the prepared set of samples. The dataset contains examples of varying quality. The quality of negative examples has a lower impact on the results (26–29). For positive images, poor quality has a significant impact on the results.

Each image was analyzed by an operator in order to select good examples. As a result, 573 good positive examples and 431 good negative examples were selected. Figure 5 shows some example images.

Fig. 5

Example images: a good positive example, b bad positive example, c good negative example, d bad negative example

Five sets of samples were selected for further tests. Their numerical descriptions are presented in Table 2. Examples are marked as ‘good’ if the selected examples are used, and ‘all’ if all available examples are used. For every example, the set of samples is divided at a ratio of two to one.

Table 2 Learning and test sets

Results of experiments in Table 3 show that the best characteristic has fuzzy models created on sets which contain good positive examples only. This is experiments 3 and 4, with 14 % of errors on test samples. This shows that the model should be trained on good positive examples only. The quality of negative examples has a lower impact on the result.

Table 3 Experiment results

When compared to the state-of-the-art algorithm, our results are satisfactory. We conducted additional experiments to check the accuracy of other methods on the same dataset. The algorithm presented by Żywicki et al. returns 29 % of errors, while the algorithm presented by Masimova et al. returns 23 % of errors. Results presented by Kmieć et al. are impressive (92 % accuracy on 40 images); however, the best outcome achieved on our dataset was 21 % of errors.

In addition, we conducted some experiments with super-resolution techniques. We created a new dataset with enhanced images from the original database of knife images. We used two known algorithms for a single image at super-resolution. The first is a learning-based method introduced by Kim and Kwon [7], while the second is a method based on iterative Weiner filtering originally presented by Hung and Siu [5]. During initial tests, we were not able to train Kim’s algorithm, therefore we did not achieve a similar (or close to similar) outcome with our dataset in terms of image quality. The second algorithm gave an outcome similar to that reported in the original paper. The average PSNR achieved for the image database was 0.41 dB lower. We assume that an appropriate level of image enhancement was achieved. Figure 6 shows enhanced and non-enhanced images from the dataset, with the improved quality clearly visible. The image looks smooth and does not show distortions near the edges. All images from the dataset were enlarged by a magnitude of two (from a resolution of 100 × 100 pixels to 200 × 200 pixels).

Fig. 6

Resized images: a without quality enhancement, b with quality enhancement

The next step was to apply our method to a new, high resolution (HR) dataset. Experiment 6 was conducted using the HR database under the same conditions as experiment 5 (Table 4). This allowed us to directly compare results from both experiments. A further experiment was conducted on the entire dataset, since it was difficult to determine which images qualify as ‘good’ following enhancement.

Table 4 Learning and test sets for the experiment with enhanced images

Results of experiment 6 are shown in Table 5. The experiments were conducted with a cross-validation technique to avoid significant distortions. The results achieved in experiment 6 are worse than those from experiment 5, which means that image enhancement does not improve classification accuracy. However, the images appear to be visually better to the human eye, while those treated with the algorithm do not. This is due to the EH descriptors, since the enhancement process smooths the image and some information is lost from near the edges. EH descriptors contain less data, therefore the classification algorithm cannot provide results with the same or higher level of accuracy (Table 6).

Table 5 Results for the experiment with enhanced images
Table 6 Results comparison for state-of-the-art and proposed algorithms


The article presents a fuzzy model for knife detection. Selected elements of the MPEG-7 descriptor are used as a feature for the pattern recognition problem. Experimental verification shows that the method can be successfully used in difficult situations. The result of less than 15 % of images being mislabeled for the entire dataset is good for the problem at hand, although it would need to be improved for real systems. The method can be used simultaneously with other image processing techniques. Further research will be aimed at assessing a set of sequential images from video, and using a combination of our method with other approaches.

The approach can be used for different pattern recognition problems with non-uniform classes where the object has a specific form, such as the knife in our example. However, image descriptors should be selected according to the features of the objects under consideration. The fuzzy model must be trained using good examples only. Subsequently, such a model can be applied to examples with less clear images. We also intend to generalize our algorithm to solve the detection problem for a wide range of objects in an automatic way.

A further conclusion concerns processing images following quality enhancement. The experiment shows that in some cases images should be analyzed before any manipulation is applied, even if enhancement improves the image quality to the human eye (e.g., CCTV camera operator). This is significant in creating architectures for modern, intelligent CCTV systems.


  1. 1.

    Baran R, Glowacz A, Matiolanski A (2013) The efficient real- and non-real-time make and model recognition of cars, Multimedia Tools and Applications. Springer, USA

    Google Scholar 

  2. 2.

    Bezdek JC, Keller J, Krisnapuram R, Pal R (2005) Fuzzy models and algorithms for pattern recognition and image processing. Springer Verlag, New York

    MATH  Google Scholar 

  3. 3.

    Chen N (2004) Fuzzy classification using self-organizing map and learning vector quantization. In: CASDMKM 2004. Lecture notes in artificial intelligence, vol. 3327, 41–50. Springer-Verlag

  4. 4.

    Glowacz A, Kmieć M, Dziech A (2013) Visual detection of knives in security applications using active appearance models, multimedia tools and applications. Springer, USA

    Google Scholar 

  5. 5.

    Hung K-W, Siu W-C (2012) Single image super-resolution using iterative Wiener filter, acoustics, speech and signal processing (ICASSP), 2012 I.E. International Conference on, vol., no., 1269, 1272, 25–30. doi: 10.1109/ICASSP.2012.6288120

  6. 6.

    Ishibuchi H, Nakashima T, Nii M (2005) Classification and modeling with linguistic information granules. Springer

  7. 7.

    Kim KI, Kwon Y (2010) Single-image super-resolution using sparse regression and natural image prior, IEEE transactions on pattern analysis & machine intelligence. vol. 32, no. 6, 1127–1133. doi:10.1109/TPAMI.2010.25

  8. 8.

    Kmieć M, Glowacz A (2011) An approach to robust visual knife detection. Mach Graph Vis 20(2):215–227

    Google Scholar 

  9. 9.

    Kmieć M, Głowacz A, Dziech A (2012) Towards robust visual knife detection in images: Active appearance models initialised with shape-specific interest points. In: Dziech A, Czyżewski A (eds.), Multimedia communications, services and security, Vol. 287 of communications in computer and information science. Springer Berlin Heidelberg, 148{158. doi:10.1007/978-3-642-30721-8_15

  10. 10.

    Knives images database, available for download,

  11. 11.

    Konor A (2005) Computational intelligence: Principles, techniques and applications. Springer, Heidelberg

    Book  Google Scholar 

  12. 12.

    Kuncheva LI (2005) Fuzzy classifier design. Fhysica-Verlag, Heidelberg

    MATH  Google Scholar 

  13. 13.

    Maksimova A (1995) The model of data presentation with fuzzy portraits for pattern recognition. In: Int. J. Comput, vol. 11, issue 1, 1995, 17–24

  14. 14.

    Maksimova A (2013) Knife detection scheme based on possibilistic schell clustering. In: Proceedings of 6th International Conference “Multimedia communications, services and security”, 143–152. Krakow, Poland

  15. 15.

    Maksimova A (2013) Decision making method for classifying models based on intra-class clustering on FCM-algorithm. In: Artificial Intelligent J., vol. 3(61), 171–178 (In Russian)

  16. 16.

    Mery D, Riffo V, Zuccar I, Pieringer C (2013) Automated x-ray object recognition using an efficient search algorithm in multiple views. In: Computer vision and pattern recognition workshops (CVPRW), 2013 I.E. Conference on, 368{374. doi:10.1109/CVPRW.2013.62

  17. 17.

    Pal NR, Bezdek JC (1995) On cluster validity for the fuzzy c-means model. In: J. IEEE transactions on fuzzy systems, vol.3, no. 3, August 1995, 370–379

  18. 18.

    Ro YM, Kim M, Kang HK, Manjunath BS, Kim J (2001) MPEG-7 homogeneous texture descriptor. ETRI J 23(2):41–51

    Article  Google Scholar 

  19. 19.

    Won CS, Park DK, Park S-J (2002) Information: efficient use of MPEG-7 edge histogramm. In: ETRI J., vol. 24, No. 1, Februar 2002, 23–30

  20. 20.

    Yu MA, Kozlovskii VA (2011) Algorithm of pattern recognition with intra-class clustering. In: Proceedings of 11th International Conference “Pattern recognition and processing”, 54–57, Minsk

  21. 21.

    Żywicki M, Matiolański A, Orzechowski TM, Dziech A (2011) Knife detection as a subset of object detection approach based on Haar cascades. In: Proceedings of 11th International Conference “Pattern recognition and information processing”, 139–142. Minsk, Belarus

Download references


This research has been financed by the European Regional Development Fund under the Innovative Economy Operational Programme, INSIGMA project No. POIG.01.01.02-00-062/09.

Author information



Corresponding author

Correspondence to Andrzej Matiolański.

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (, which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Matiolański, A., Maksimova, A. & Dziech, A. CCTV object detection with fuzzy classification and image enhancement. Multimed Tools Appl 75, 10513–10528 (2016).

Download citation


  • Pattern recognition
  • Fuzzy classifier
  • Fuzzy inference
  • Data analysis
  • Knife detection
  • Feature descriptor
  • Image enhancement