{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/image-quality-assessment-unifying-structure","title":"Image Quality Assessment: Unifying Structure and Texture Similarity","arxiv_id":"2004.07728","date":"2020-04-16","proceeding":null,"authors":["Keyan Ding","Kede Ma","Shiqi Wang","Eero P. Simoncelli"],"abstract":"Objective measures of image quality generally operate by comparing pixels of a \"degraded\" image to those of the original. Relative to human observers, these measures are overly sensitive to resampling of texture regions (e.g., replacing one patch of grass with another). Here, we develop the first full-reference image quality model with explicit tolerance to texture resampling. Using a convolutional neural network, we construct an injective and differentiable function that transforms images to multi-scale overcomplete representations. We demonstrate empirically that the spatial averages of the feature maps in this representation capture texture appearance, in that they provide a set of sufficient statistical constraints to synthesize a wide variety of texture patterns. We then describe an image quality method that combines correlations of these spatial averages (\"texture similarity\") with correlations of the feature maps (\"structure similarity\"). The parameters of the proposed measure are jointly optimized to match human ratings of image quality, while minimizing the reported distances between subimages cropped from the same texture images. Experiments show that the optimized method explains human perceptual scores, both on conventional image quality databases, as well as on texture databases. The measure also offers competitive performance on related tasks such as texture classification and retrieval. Finally, we show that our method is relatively insensitive to geometric transformations (e.g., translation and dilation), without use of any specialized training or data augmentation. Code is available at https://github.com/dingkeyan93/DISTS.","url_abs":"https://arxiv.org/abs/2004.07728v3","url_pdf":"https://arxiv.org/pdf/2004.07728v3.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"image-quality-assessment-unifying-structure","repo_url":"https://github.com/dingkeyan93/DISTS","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"image-quality-assessment-unifying-structure","repo_url":"https://github.com/LONG-9621/IQA01","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"image-quality-assessment","task_name":"Image Quality Assessment"},{"task_slug":"retrieval","task_name":"Retrieval"},{"task_slug":"video-quality-assessment","task_name":"Video Quality Assessment"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/video-quality-assessment-on-msu-sr-qa-dataset","task":"Video Quality Assessment","dataset":"MSU SR-QA Dataset","model":"DISTS","rank_in_archive_order":31,"of":60,"metrics":{"KLCC":"0.42320","PLCC":"0.55042","SROCC":"0.53346","Type":"FR"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2004.07728","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2004.07728"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/dingkeyan93/DISTS","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/LONG-9621/IQA01","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":2},"by_repo_kind":{"official":{"samples":1,"ran":0,"repositories":1},"listed":{"samples":1,"ran":0,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"913d396ed85be58b","entry":"prepare_image","repo":"dingkeyan93/DISTS","repo_kind":"official","path":"DISTS_pytorch/DISTS_pt.py","file_url":"https://github.com/dingkeyan93/DISTS/blob/HEAD/DISTS_pytorch/DISTS_pt.py","link_basis":"plan_row","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"913d396ed85be58b"}},{"code_sha256_prefix":"43c6706154e54066","entry":"prepare_image","repo":"LONG-9621/IQA01","repo_kind":"listed","path":"DISTS_pytorch/DISTS_pt.py","file_url":"https://github.com/LONG-9621/IQA01/blob/HEAD/DISTS_pytorch/DISTS_pt.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"43c6706154e54066"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}