function JQM = getjqm(quality,isColor) % function JQM = getjqm(quality,isColor) % Modifed Date : Feb.18th % for single input parameter, this function works % exactly as same as old function getjqm if nargin == 1 isColor =0 ; % isColor == 0 : use basicJQM % isColor == 1 : use colorJQM end basicJQM = [16 11 10 16 24 40 51 61; 12 12 14 19 26 58 60 55; 14 13 16 24 41 57 69 56; 14 17 22 29 51 87 80 62; 18 22 37 56 68 109 103 77; 24 35 55 64 81 104 113 92; 49 64 78 87 103 121 120 101; 72 92 95 98 112 100 103 99]; colorJQM = [17 18 24 47 99 99 99 99; 18 21 26 66 99 99 99 99; 24 26 56 99 99 99 99 99; 47 66 99 99 99 99 99 99; 99 99 99 99 99 99 99 99; 99 99 99 99 99 99 99 99; 99 99 99 99 99 99 99 99; 99 99 99 99 99 99 99 99]; if quality <= 0 quality = 1; end if quality > 100 quality = 100; end if quality < 50 scalefactor = 5000/quality; else scalefactor = 200 - quality*2; end if isColor == 0 JQM = double(uint8((basicJQM*scalefactor+50)/100)); else JQM = double(uint8((colorJQM*scalefactor+50)/100)); end