by Jan Erik Solem · 26 Jun 2012
Programming Computer Vision with Python Jan Erik Solem Published by O’Reilly Media Beijing ⋅ Cambridge ⋅ Farnham ⋅ Köln ⋅ Sebastopol ⋅ Tokyo Preface Today, images and video are everywhere. Online photo-
…
gigabytes of photos and videos on their devices. Programming a computer and designing algorithms for understanding what is in these images is the field of computer vision. Computer vision powers applications like image search, robot navigation, medical image analysis, photo management, and many more. The idea behind this book is to give an easily
…
accessible entry point to hands-on computer vision with enough understanding of the underlying theory and algorithms to be a foundation for students, researchers, and enthusiasts. The Python programming language, the language choice
…
and open software with a low learning threshold. Python was the obvious choice. Be complete and self-contained. This book does not cover all of computer vision but rather it should be complete in that all code is presented and explained. The reader should be able to reproduce the examples and build
…
broad rather than detailed, inspiring and motivational rather than theoretical. In short, it should act as a source of inspiration for those interested in programming computer vision applications. Prerequisites and Overview This book looks at theory and algorithms for a wide range of applications and problems. Here is a short summary of
…
derivatives and gradients. Some of the more advanced mathematical examples can be easily skipped. What You Will Learn Hands-on programming with images using Python. Computer vision techniques behind a wide variety of real-world applications. Many of the fundamental algorithms and how to implement and apply them yourself. The code examples
…
image into meaningful regions using clustering, user interactions, or image models. Chapter 10 Shows how to use the Python interface for the commonly used OpenCV computer vision library and how to work with video and camera input. There is also a bibliography at the back of the book. Citations of bibliographic entries
…
are made by number in square brackets, as in [20]. Introduction to Computer Vision Computer vision is the automated extraction of information from images. Information can mean anything from 3D models, camera position, object detection and recognition to grouping and searching
…
image content. In this book, we take a wide definition of computer vision and include things like image warping, de-noising, and augmented reality.[1] Sometimes computer vision tries to mimic human vision, sometimes it uses a data and statistical approach, and sometimes geometry is the key
…
to solving problems. We will try to cover all of these angles in this book. Practical computer vision contains a mix of programming, modeling, and mathematics and is sometimes difficult to grasp. I have deliberately tried to present the material with a minimum
…
. For beginners to Python, Mark Lutz’ book Learning Python [20] and the online documentation at http://www.python.org/ are good starting points. When programming computer vision, we need representations of vectors and matrices and operations on them. This is handled by Python’s NumPy module, where both vectors and matrices are
…
’s documentation does require permission. We appreciate, but do not require, attribution. An attribution usually includes the title, author, publisher, and ISBN. For example: “Programming Computer Vision with Python by Jan Erik Solem (O’Reilly). Copyright © 2012 Jan Erik Solem, 978-1-449-31654-9.” If you feel your use of code
…
, Points, and Lines Although it is possible to create nice bar plots, pie charts, scatter plots, etc., only a few commands are needed for most computer vision purposes. Most importantly, we want to be able to show things like interest points, correspondences, and detected objects using points and lines. Here is an
…
space. A megapixel image has dimensions in the millions. With such high dimensionality, it is no surprise that dimensionality reduction comes in handy in many computer vision applications. The projection matrix resulting from PCA can be seen as a change of coordinates to a coordinate system where the coordinates are in descending
…
an affine transformation matrix H on image patches is called warping (or affine warping) and is frequently used in computer graphics but also in several computer vision algorithms. A warp can easily be performed with SciPy using the ndimage package. The command transformed_im = ndimage.affine_transform(im,A,b,size) transforms
…
them. 4.1 The Pin-Hole Camera Model The pin-hole camera model (or sometimes projective camera model) is a widely used camera model in computer vision. It is simple and accurate enough for most applications. The name comes from the type of camera, like a camera obscura, that collects light through
…
map (or, inversely, a disparity map) where the depth (or disparity) for each pixel in the image is estimated. This is a classic problem in computer vision and there are many algorithms for solving it. The Middlebury Stereo Vision Page (http://vision.middlebury.edu/stereo/) contains a constantly updated evaluation of the
…
with them. A graph cut is the partitioning of a directed graph into two disjoint sets. Graph cuts can be used for solving many different computer vision problems like stereo depth reconstruction, image stitching, and image segmentation. By creating a graph from image pixels and their neighbors and introducing an energy or
…
neighborhoods into account. 9.3 Variational Methods In this book, you have seen a number of examples of minimizing a cost or energy to solve computer vision problems. In the previous sections it was minimizing the cut in a graph, but we also saw examples like the ROF de-noising, k-means
…
and 0 outside. Chapter 10. OpenCV This chapter gives a brief overview of how to use the popular computer vision library OpenCV through the Python interface. OpenCV is a C++ library for real-time computer vision initially developed by Intel and now maintained by Willow Garage. OpenCV is open source and released under a
…
and look deeper into tracking and video. 10.1 The OpenCV Python Interface OpenCV is a C++ library with modules that cover many areas of computer vision. Besides C++ (and C), there is growing support for Python as a simpler scripting language through a Python interface on top of the C++ code
…
camera move between two consecutive images. It is a 2D vector field of within-image translation. It is a classic and well-studied field in computer vision with many successful applications in, for example, video compression, motion estimation, object tracking, and image segmentation. Optical flow relies on three major assumptions: Brightness constancy
…
and download, etc. Appendix B. Image Datasets B.1 Flickr The immensely popular photo-sharing site Flickr (http://flickr.com/) is a gold mine for computer vision researchers and hobbyists. With hundreds of millions of images, many of them tagged by users, it is a great resource to get training data or
…
adapted for this book. Appendix D. References [1] Herbert Bay, Tinne Tuytelaars, and Luc Van Gool. SURF: Speeded up robust features. In European Conference on Computer Vision, 2006. [2] Yuri Boykov, Olga Veksler, and Ramin Zabih. Fast approximate energy minimization via graph cuts. IEEE Transactions on Pattern Analysis and Machine Intelligence, 23
…
/matematiklth/personal/byrod/papers/sudokuocr.pdf, 2007. [5] Antonin Chambolle. Total variation minimization and a class of binary mrf models. In Energy Minimization Methods in Computer Vision and Pattern Recognition, Lecture Notes in Computer Science, pages 136–152. Springer Berlin / Heidelberg, 2005. [6] T. Chan and L. Vese. Active contours without edges
…
. A combined corner and edge detector. In Proceedings Alvey Conference, pages 189–192, 1988. [13] R. I. Hartley and A. Zisserman. Multiple View Geometry in Computer Vision. Cambridge University Press, ISBN: 0521540518, second edition, 2004. [14] Richard Hartley. In defense of the eight-point algorithm. IEEE Transactions on Pattern Analysis and Machine
…
, 2004. [17] David G. Lowe. Object recognition from local scale-invariant features. In International Conference on Computer Vision, pages 1150–1157, 1999. [18] David G. Lowe. Distinctive image features from scale-invariant keypoints. International Journal of Computer Vision, 60(2):91–110, 2004. [19] Bruce D. Lucas and Takeo Kanade. An iterative image registration
…
Image Processing and its Applications, pages 302–306, 1992. [23] D. Nistér and H. Stewénius. Scalable recognition with a vocabulary tree. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR), volume 2, pages 2161–2168, 2006. [24] Travis E. Oliphant. Guide to NumPy. http://www.tramy.us/numpybook.pdf, 2006. [25
…
. Pollefeys, L. Van Gool, M. Vergauwen, F. Verbiest, K. Cornelis, J. Tops, and R. Koch. Visual modeling with a hand-held camera. International Journal of Computer Vision, 59(3):207–232, 2004. [26] Marc Pollefeys. Visual 3d modeling from images—tutorial notes. Technical report, University of North Carolina–Chapel Hill. http://www
…
D, 60:259–268, 1992. [29] Daniel Scharstein and Richard Szeliski. A taxonomy and evaluation of dense two-frame stereo correspondence algorithms. International Journal of Computer Vision, 2001. [30] Daniel Scharstein and Richard Szeliski. High-accuracy stereo depth maps using structured light. In IEEE Computer Society Conference on
…
Computer Vision and Pattern Recognition, 2003. [31] Toby Segaran. Programming Collective Intelligence. O’Reilly Media, 2007. [32] Jianbo Shi and Jitendra Malik. Normalized cuts and image segmentation.
…
Trans. Pattern Anal. Mach. Intell., 22:888–905, August 2000. [33] Jianbo Shi and Carlo Tomasi. Good features to track. In 1994 IEEE Conference on Computer Vision and Pattern Recognition (CVPR’94), pages 593–600, 1994. [34] Noah Snavely, Steven M. Seitz, and Richard Szeliski. Photo tourism: Exploring photo collections in 3d
…
Algorithms: Theory and Practice, ICCV ’99, pages 298–372. Springer-Verlag, 2000. [36] A. Vedaldi and B. Fulkerson. VLFeat: An open and portable library of computer vision algorithms. http://www.vlfeat.org/, 2008. [37] Deepak Verma and Marina Meila. A comparison of spectral clustering algorithms. Technical report, 2003. [38] Luminita A. Vese
…
and Tony F. Chan. A multiphase level set framework for image segmentation using the mumford and shah model. International Journal of Computer Vision, 50:271–293, December 2002. [39] Paul Viola and Michael Jones. Robust real-time object detection. In International Journal of
…
Zuliani. Ransac for dummies. Technical report, Vision Research Lab, UCSB, 2011. Appendix E. About the Author Jan Erik Solem is a Python enthusiast and a computer vision researcher and entrepreneur. He is an applied mathematician and has worked as associate professor, startup CTO, and now also book author. He sometimes writes about
…
computer vision and Python on his blog www.janeriksolem.net. He has used Python for computer vision in teaching, research, and industrial applications for many years. He currently lives in San Francisco. Index A note
…
index, Setting Up the Database X XML, Registering Images xml.dom, Registering Images About the Author Jan Erik Solem is a Python enthusiast and a computer vision researcher and entrepreneur. He is an applied mathematician and has worked as associate professor, startup CTO, and now also book author. He sometimes writes about
…
computer vision and Python on his blog www.janeriksolem.net. He has used Python for computer vision in teaching, research and industrial applications for many years. He currently lives in San Francisco. Colophon The animal
…
on the cover of Programming Computer Vision with Python is a bullhead. Often referred to as “bullhead catfish,” members of the genus Ameiurus come in three common types: the black bullhead (Ameiurus
…
; the heading font is Adobe Myriad Condensed; and the code font is LucasFont’s TheSansMonoCondensed. Programming Computer Vision with Python Jan Erik Solem Editor Mike Hendrickson Editor Andy Oram Copyright © 2012 Jan Erik Solem Programming Computer Vision with Python by Jan Erik Solem All rights reserved. O’Reilly books may be purchased for educational
…
?isbn=0636920022923 for release details. Nutshell Handbook, the Nutshell Handbook logo, and the O’Reilly logo are registered trademarks of O’Reilly Media, Inc. Programming Computer Vision with Python, the image of a bullhead fish, and related trade dress are trademarks of O’Reilly Media, Inc. Many of the designations used by
by Joseph Howse · 22 Apr 2013 · 138pp · 27,404 words
Table of Contents OpenCV Computer Vision with Python Credits About the Author About the Reviewers www.PacktPub.com Support files, eBooks, discount offers and more Why Subscribe? Free Access for Packt
…
> Creating <positive_description> Creating <binary_description> by running <opencv_createsamples> Creating <cascade> by running <opencv_traincascade> Testing and improving <cascade> Summary Index OpenCV Computer Vision with Python * * * OpenCV Computer Vision with Python Copyright © 2013 Packt Publishing All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted
…
applications and games. In 2005, he finished his studies in IT from the Universitat Politécnica de Valencia with honors in human-computer interaction supported by computer vision with OpenCV (v0.96). He had a final project based on this subject and published it on HCI Spanish congress. He participated in Blender source
…
. David now has more than 10 years of experience in IT, with more than seven years experience in computer vision, computer graphics, and pattern recognition working on different projects and startups, applying his knowledge of computer vision, optical character recognition, and augmented reality. He is the author of the DamilesBlog (http://blog.damiles.com
…
), where he publishes research articles and tutorials about OpenCV, computer vision in general, and Optical Character Recognition algorithms. He is the co-author
…
of Mastering OpenCV with Practical Computer Vision Projects , Daniel Lélis Baggio, Shervin Emami, David Millán Escrivá, Khvedchenia Ievgen, Naureen Mahmood, Jasonl Saragih, and
…
in his blog articles. He also works as a freelancer during college holidays and even helps school students grow their interest in OpenCV Python and computer vision. Congrats to the author and all those who worked on this book. I think this might be the first book exclusively on OpenCV Python. And
…
normal webcam or a specialized depth sensor, such as the Microsoft Kinect. OpenCV is an open source, cross-platform library that provides building blocks for computer vision experiments and applications. It provides high-level interfaces for capturing, processing, and presenting image data. For example, it abstracts details about camera hardware and array
…
allocation. OpenCV is widely used in both academia and industry. Today, computer vision can reach consumers in many contexts via webcams, camera phones, and gaming sensors such as the Kinect. For better or worse, people love to be
…
a live camera feed. Behind this application, you will have a small library of reusable functions and classes that you can apply in your future computer vision projects. Let's look at the book's progression in more detail. What this book covers Chapter 1, Setting up OpenCV, lets us examine the
…
camera, such as Microsoft Kinect or Asus Xtion PRO. Who this book is for This book is great for Python developers who are new to computer vision and who like to learn through application development. It is assumed that you have some previous experience in Python and the command line. A basic
…
make a sandwich: from the outside in. Bread slices and spread or endpoints and glue, come before fillings or algorithms. We choose this approach because computer vision is extroverted—it contemplates the real world outside our computer—and we want to apply all our subsequent, algorithmic work to the real world through
…
,226),(255,255)], rPoints = [(0,0),(56,22),(211,255),(255,255)], dtype = dtype) Highlighting edges Edges play a major role in both human and computer vision. We, as humans, can easily recognize many object types and their pose just by seeing a backlit silhouette or a rough sketch. Indeed, when art
…
libraries. We have also practiced wrapping this functionality in a high-level, reusable, and object-oriented design. Congratulations! You now have the skill to develop computer vision applications in Python using OpenCV. Still, there is always more to learn and do! If you liked working with NumPy and OpenCV, please check out
…
these other titles from Packt Publishing: NumPy Cookbook, Ivan Idris OpenCV 2 Computer Vision Application Programming Cookbook, Robert Laganière, which uses OpenCV's C++ API for desktops Mastering OpenCV with Practical Computer Vision Projects, (by multiple authors), which uses OpenCV's C++ API for multiple platforms The upcoming book
…
of OpenCV's Python bindings. I hope you are able to use this book and its codebase as a starting point for rewarding work in computer vision. Let me know what you are studying or developing next! Appendix A. Integrating with Pygame This appendix shows how to set up the Pygame library
…
joysticks/gamepads Creating custom events Playback and synthesis of sounds and music For example, Pygame might be a suitable backend for a game that uses computer vision, whereas HighGUI would not be. Summary By now, we should have an application that uses OpenCV for capturing (and possibly manipulating) images, while using Pygame
by Maximilian Kasy · 15 Jan 2025 · 209pp · 63,332 words
was sometimes more than one hundred. A less deadly set of applications of supervised learning has led to spectacular successes of AI in language processing, computer vision, and game play in recent years: Large language models can predict the word that is most likely to come next given a sequence of words
…
built. How to best do this depends on the application domain, and it is the subject matter of a large body of practical knowledge. For computer vision and image recognition, convolutional neural nets have turned out to be successful. Such neural nets leverage the fact that an image can be shifted left
…
. Green. Microeconomic Theory. Oxford University Press, 1995. Moosavi-Dezfooli, S.-M., A. Fawzi, O. Fawzi, and P. Frossard. “Universal Adversarial Perturbations.” 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017, 1765–73. Paul, K., and D. Milmo. “Facebook Putting Profit Before Public Good, Says Whistleblower Frances Haugen.” Guardian, October 4
by James Ashton · 11 May 2023 · 401pp · 113,586 words
opposite of a win, right – which is a disaster.’18 There was also bafflement. On 18 May 2016, Arm had acquired Apical, an expert in computer vision technology, for $350m. The company, based in Loughborough in the English Midlands, would be useful in the IOT world because it enabled cameras to better
by Dipanjan Sarkar · 1 Dec 2016
of what is possible with Python. It is widely used in several other domains including artificial intelligence (AI) , game development, robotics, Internet of Things (IoT), computer vision, media processing, and network and system monitoring, just to name a few. To read some of the widespread success stories achieved with Python in different
by Aurélien Géron · 13 Mar 2017 · 1,331pp · 163,200 words
the code, the pretrained models, and tools to download popular image datasets. Another popular model zoo is Caffe’s Model Zoo. It also contains many computer vision models (e.g., LeNet, AlexNet, ZFNet, GoogLeNet, VGGNet, inception) trained on various datasets (e.g., ImageNet, Places Database, CIFAR10, etc.). Saumitro Dasgupta wrote a converter
by James Pustejovsky and Amber Stubbs · 14 Oct 2012 · 502pp · 107,510 words
Natural Language Tasks.” In Proceedings of EMNLP-08. Sorokin, Alexander, and David Forsyth. 2008. “Utility data annotation with Amazon Mechanical Turk.” In Proceedings of the Computer Vision and Pattern Recognition Workshops. Index A note on the digital index A link in an index entry is displayed as the section title in which
by Jan Kunigk, Ian Buss, Paul Wilkinson and Lars George · 8 Jan 2019 · 1,409pp · 205,237 words
in machine learning, referred to as deep learning, are able to automatically discover the relevant data features for learning, which essentially enables use cases like computer vision, natural language processing, or fraud detection for any corporation. Many machine learning algorithms (even fairly simple ones) benefit from big data in an unproportional, even
by Ivan Idris · 30 Sep 2012 · 197pp · 35,256 words
to run the following command: python setup.py install Detecting corners Corner detection (http://en.wikipedia.org/wiki/Corner_detection ) is a standard technique in Computer Vision. scikits-image offers a Harris Corner Detector, which is great, because corner detection is pretty complicated. Obviously, we could do it ourselves from scratch, but
by Raúl Garreta and Guillermo Moncecchi · 14 Sep 2013 · 122pp · 29,286 words
the Reviewers Andreas Hjortgaard Danielsen holds a Master's degree in Computer Science from the University of Copenhagen, where he specialized in Machine Learning and Computer Vision. While writing his Master's thesis, he was an intern research student in the Lampert Group at the Institute of Science and Technology (IST), Austria
by Titus Winters, Tom Manshreck and Hyrum Wright · 17 Mar 2020 · 214pp · 31,751 words
by Yuli Vasiliev · 2 Apr 2020
by Trent Hauck · 3 Nov 2014
by Bruce Schneier · 3 Sep 2018 · 448pp · 117,325 words
by David Easley, Marcos López de Prado and Maureen O'Hara · 28 Sep 2013
by Jeff Nickoloff and Stephen Kuenzli · 10 Dec 2019 · 629pp · 109,663 words
by Jessica Bruder and Dale Maharidge · 29 Mar 2020 · 159pp · 42,401 words
by Jon Bruner · 27 Mar 2013 · 49pp · 12,968 words
by Lee Phillips · 15 Feb 2012 · 199pp · 47,154 words
by Nick Polson and James Scott · 14 May 2018 · 301pp · 85,126 words
by Ray Kurzweil · 25 Jun 2024
by Dan Ariely · 19 Feb 2007 · 383pp · 108,266 words
by Bill Gates · 2 May 2022 · 406pp · 88,977 words
by Dan Ariely · 3 Apr 2013 · 898pp · 266,274 words
by Cathy O'Neil and Rachel Schutt · 8 Oct 2013 · 523pp · 112,185 words
by Judea Pearl and Dana Mackenzie · 1 Mar 2018
by Richard Baldwin · 10 Jan 2019 · 301pp · 89,076 words
by Madhumita Murgia · 20 Mar 2024 · 336pp · 91,806 words
by Ronald J. Deibert · 14 Aug 2020
by Dariusz Jemielniak and Aleksandra Przegalinska · 18 Feb 2020 · 187pp · 50,083 words
by Daniel Simons and Christopher Chabris · 10 Jul 2023 · 338pp · 104,815 words
by Calum Chace · 28 Jul 2015 · 144pp · 43,356 words
by Hannah Fry · 17 Sep 2018 · 296pp · 78,631 words
by Geoff Cox and Alex McLean · 9 Nov 2012
by Michael Kearns and Aaron Roth · 3 Oct 2019
by Stanley McChrystal and Anna Butrico · 4 Oct 2021 · 489pp · 106,008 words
by Erik Brynjolfsson and Andrew McAfee · 20 Jan 2014 · 339pp · 88,732 words
by Golden Krishna · 10 Feb 2015 · 271pp · 62,538 words
by Mary L. Gray and Siddharth Suri · 6 May 2019 · 346pp · 97,330 words
by Carl Benedikt Frey · 17 Jun 2019 · 626pp · 167,836 words
by Foster Provost and Tom Fawcett · 30 Jun 2013 · 660pp · 141,595 words
by Mehmed Kantardzić · 2 Jan 2003 · 721pp · 197,134 words
by Dean Starkman · 1 Jan 2013 · 514pp · 152,903 words
by Jamie Bartlett · 4 Apr 2018 · 170pp · 49,193 words
by Seth Stephens-Davidowitz · 8 May 2017 · 337pp · 86,320 words
by David Spiegelhalter · 2 Sep 2019 · 404pp · 92,713 words
by Ethan Mollick · 2 Apr 2024 · 189pp · 58,076 words
by Meredith Broussard · 19 Apr 2018 · 245pp · 83,272 words
by Richard Susskind and Daniel Susskind · 24 Aug 2015 · 742pp · 137,937 words
by James Bridle · 18 Jun 2018 · 301pp · 85,263 words
by Bill McKibben · 15 Apr 2019
by David Spiegelhalter · 14 Oct 2019 · 442pp · 94,734 words
by Gavin Hackeling · 31 Oct 2014
by Aaron Bastani · 10 Jun 2019 · 280pp · 74,559 words
by Ben Tarnoff · 13 Jun 2022 · 234pp · 67,589 words
by Jiawei Han, Micheline Kamber and Jian Pei · 21 Jun 2011
by Azeem Azhar · 6 Sep 2021 · 447pp · 111,991 words
by Mo Gawdat · 29 Sep 2021 · 259pp · 84,261 words
by Ash Fontana · 4 May 2021 · 296pp · 66,815 words
by Jerry Kaplan · 3 Aug 2015 · 237pp · 64,411 words
by Michael Wooldridge · 2 Nov 2018 · 346pp · 97,890 words
by Nick Bostrom · 3 Jun 2014 · 574pp · 164,509 words
by Brian Merchant · 19 Jun 2017 · 416pp · 129,308 words
by Toby Segaran and Jeff Hammerbacher · 1 Jul 2009
by Jack D. Schwager · 1 Jan 2001
by Daniel Susskind · 14 Jan 2020 · 419pp · 109,241 words
by Matthew Hindman · 24 Sep 2018
by Richard Watson · 5 Nov 2013 · 219pp · 63,495 words
by Jevin D. West and Carl T. Bergstrom · 3 Aug 2020
by Adrian Hon · 14 Sep 2022 · 371pp · 107,141 words
by Mariya Yao, Adelyn Zhou and Marlene Jia · 1 Jun 2018 · 161pp · 39,526 words
by Christopher Wylie · 8 Oct 2019
by Mark Bergen · 5 Sep 2022 · 642pp · 141,888 words
by Howard Rheingold · 24 Dec 2011
by Kevin Kelly · 14 Jul 2010 · 476pp · 132,042 words
by Amy Brown and Greg Wilson · 24 May 2011 · 834pp · 180,700 words
by Pistono, Federico · 14 Oct 2012 · 245pp · 64,288 words
by Alex Kantrowitz · 6 Apr 2020 · 260pp · 67,823 words
by Eric Topol · 6 Jan 2015 · 588pp · 131,025 words
by Geoffrey Cain · 28 Jun 2021 · 340pp · 90,674 words
by Stuart Russell · 7 Oct 2019 · 416pp · 112,268 words
by Henry A Kissinger, Eric Schmidt and Daniel Huttenlocher · 2 Nov 2021 · 194pp · 57,434 words
by Stephen Witt · 8 Apr 2025 · 260pp · 82,629 words
by John Cheney-Lippold · 1 May 2017 · 420pp · 100,811 words
by Rowan Hooper · 15 Jan 2020 · 285pp · 86,858 words
by Mark Bauerlein · 7 Sep 2011 · 407pp · 103,501 words
by Tyler Cowen · 11 Sep 2013 · 291pp · 81,703 words
by John Brockman · 5 Oct 2015 · 481pp · 125,946 words
by Kentaro Toyama · 25 May 2015 · 494pp · 116,739 words
by Veljko Krunic · 29 Mar 2020
by Pedro Domingos · 21 Sep 2015 · 396pp · 117,149 words
by Simone Browne · 1 Oct 2015 · 326pp · 84,180 words
by Richard Watson · 1 Jan 2008
by Clive Thompson · 26 Mar 2019 · 499pp · 144,278 words
by Daniel J. Levitin · 18 Aug 2014 · 685pp · 203,949 words
by Sendhil Mullainathan · 3 Sep 2014 · 305pp · 89,103 words
by Fabio Nelli · 27 Sep 2018 · 688pp · 107,867 words
by James Barrat · 30 Sep 2013 · 294pp · 81,292 words
by Luke Dormehl · 10 Aug 2016 · 252pp · 74,167 words
by Jeremy Rifkin · 31 Mar 2014 · 565pp · 151,129 words
by Richard A. Clarke and Robert K. Knake · 15 Jul 2019 · 409pp · 112,055 words
by Matthew Ball · 18 Jul 2022 · 412pp · 116,685 words
by Jamie Susskind · 3 Sep 2018 · 533pp
by Cary McClelland · 8 Oct 2018 · 225pp · 70,241 words
by Temple Grandin, Ph.d. · 11 Oct 2022
by Orly Lobel · 17 Oct 2022 · 370pp · 112,809 words
by Nicole Kobie · 3 Jul 2024 · 348pp · 119,358 words
by Mark Last, Abraham Kandel and Horst Bunke · 24 Jun 2004 · 205pp · 20,452 words
by Steven Levy · 18 May 2010 · 598pp · 183,531 words
by Anil Ananthaswamy · 15 Jul 2024 · 416pp · 118,522 words
by Anders Lisdorf
by Peter H. Diamandis and Steven Kotler · 28 Jan 2020 · 501pp · 114,888 words
by Martin Ford · 13 Sep 2021 · 288pp · 86,995 words
by Brad Smith and Carol Ann Browne · 9 Sep 2019 · 482pp · 121,173 words
by George Gilder · 16 Jul 2018 · 332pp · 93,672 words
by Toby Ord · 24 Mar 2020 · 513pp · 152,381 words
by Sinan Aral · 14 Sep 2020 · 475pp · 134,707 words
by Brian Christian · 5 Oct 2020 · 625pp · 167,349 words
by Brad Stone · 10 May 2021 · 569pp · 156,139 words
by Ellen Ruppel Shell · 22 Oct 2018 · 402pp · 126,835 words
by Illah Reza Nourbakhsh · 1 Mar 2013
by Kai-Fu Lee · 14 Sep 2018 · 307pp · 88,180 words
by Douglas Hofstadter and Emmanuel Sander · 10 Sep 2012 · 1,079pp · 321,718 words
by Daniel C. Dennett · 7 Feb 2017 · 573pp · 157,767 words
by Paul Scharre · 23 Apr 2018 · 590pp · 152,595 words
by Ben Goertzel and Pei Wang · 1 Jan 2007 · 303pp · 67,891 words
by Walter Isaacson · 23 Oct 2011 · 915pp · 232,883 words
by Richard Yonck · 7 Mar 2017 · 360pp · 100,991 words
by Marc Goodman · 24 Feb 2015 · 677pp · 206,548 words
by Thomas S. Mullaney, Benjamin Peters, Mar Hicks and Kavita Philip · 9 Mar 2021 · 661pp · 156,009 words
by Tim O'Reilly · 9 Oct 2017 · 561pp · 157,589 words
by Andreas Herrmann, Walter Brenner and Rupert Stadler · 25 Mar 2018
by Marcus Du Sautoy · 7 Mar 2019 · 337pp · 103,522 words
by Jonathan Waldman · 7 Jan 2020 · 277pp · 91,698 words
by John Markoff · 22 Mar 2022 · 573pp · 142,376 words
by Raghuram Rajan · 26 Feb 2019 · 596pp · 163,682 words
by Paul Scharre · 18 Jan 2023
by Walter Isaacson · 11 Sep 2023 · 562pp · 201,502 words
by Kenneth Payne · 16 Jun 2021 · 339pp · 92,785 words
by Natalie Berg and Miya Knights · 28 Jan 2019 · 404pp · 95,163 words
by Mustafa Suleyman · 4 Sep 2023 · 444pp · 117,770 words
by Brett Stern · 14 Oct 2012 · 486pp · 132,784 words
by Rob Reich, Mehran Sahami and Jeremy M. Weinstein · 6 Sep 2021
by Anthony M. Townsend · 15 Jun 2020 · 362pp · 97,288 words
by Steven Osborn · 17 Sep 2013 · 310pp · 34,482 words
by Anthony Berglas, William Black, Samantha Thalind, Max Scratchmann and Michelle Estes · 28 Feb 2015
by Shoshana Zuboff · 15 Jan 2019 · 918pp · 257,605 words
by Paul R. Daugherty and H. James Wilson · 15 Jan 2018 · 523pp · 61,179 words
by Martin Ford · 16 Nov 2018 · 586pp · 186,548 words
by Stuart Russell and Peter Norvig · 14 Jul 2019 · 2,466pp · 668,761 words
by Blake J. Harris · 19 Feb 2019 · 561pp · 163,916 words
by Amy Webb · 5 Mar 2019 · 340pp · 97,723 words
by Yuval Noah Harari · 29 Aug 2018 · 389pp · 119,487 words
by Hod Lipson and Melba Kurman · 22 Sep 2016
by Martin Campbell-Kelly · 15 Jan 2003
by Adam Greenfield · 29 May 2017 · 410pp · 119,823 words
by Tom Standage · 31 Aug 2005
by Gary Marcus and Jeremy Freeman · 1 Nov 2014 · 336pp · 93,672 words
by Jeremy Bailenson · 30 Jan 2018 · 302pp · 90,215 words
by Michael Swaine and Paul Freiberger · 19 Oct 2014 · 459pp · 140,010 words
by Steven Levy · 25 Feb 2020 · 706pp · 202,591 words
by Stephen M Fleming · 27 Apr 2021
by Satya Nadella, Greg Shaw and Jill Tracie Nichols · 25 Sep 2017 · 391pp · 71,600 words
by Nick Chater · 28 Mar 2018 · 263pp · 81,527 words
by Rebecca Fannin · 2 Sep 2019 · 269pp · 70,543 words
by Ray Kurzweil · 31 Dec 1998 · 696pp · 143,736 words
by Xiaowei Wang · 12 Oct 2020 · 196pp · 61,981 words
by Valliappa Lakshmanan, Sara Robinson and Michael Munn · 31 Oct 2020
by David Kerrigan · 18 Jun 2017 · 472pp · 80,835 words
by Jason Torchinsky · 6 May 2019 · 175pp · 54,755 words
by Parag Khanna · 5 Feb 2019 · 496pp · 131,938 words
by Lawrence Ingrassia · 28 Jan 2020 · 290pp · 90,057 words
by Kashmir Hill · 19 Sep 2023 · 487pp · 124,008 words
by Alan Weisman · 21 Apr 2025 · 599pp · 149,014 words
by Keach Hagey · 19 May 2025 · 439pp · 125,379 words
by Parmy Olson · 284pp · 96,087 words
by Raj M. Shah and Christopher Kirchhoff · 8 Jul 2024 · 272pp · 103,638 words
by Sebastian Mallaby · 1 Feb 2022 · 935pp · 197,338 words
by Kai-Fu Lee and Qiufan Chen · 13 Sep 2021
by Frederik L. Schodt · 31 Mar 1988 · 361pp · 83,886 words
by John Markoff · 24 Aug 2015 · 413pp · 119,587 words
by John Markoff · 1 Jan 2005 · 394pp · 108,215 words
by Marshall Brain · 6 Apr 2015 · 215pp · 56,215 words
by Adrian Rosebrock
by Terrence J. Sejnowski · 27 Sep 2018
by Scott Donaldson, Stanley Siegel and Gary Donaldson · 13 Jan 2012 · 458pp · 135,206 words
by Steven Pinker · 1 Jan 1997 · 913pp · 265,787 words
by Eric Topol · 1 Jan 2019 · 424pp · 114,905 words
by Neal Stephenson · 3 Jun 2019 · 993pp · 318,161 words
by Billy Gallagher · 13 Feb 2018 · 359pp · 96,019 words
by Sean McFate · 22 Jan 2019 · 330pp · 83,319 words
by Sergey Young · 23 Aug 2021 · 326pp · 88,968 words
by Yarden Katz
by Anil Seth · 29 Aug 2021 · 418pp · 102,597 words
by Cade Metz · 15 Mar 2021 · 414pp · 109,622 words
by Paris Marx · 4 Jul 2022 · 295pp · 81,861 words
by Melanie Mitchell · 14 Oct 2019 · 350pp · 98,077 words
by Yolande Strengers and Jenny Kennedy · 14 Apr 2020
by Karen Hao · 19 May 2025 · 660pp · 179,531 words
by Sonja Thiel and Johannes C. Bernhardt · 31 Dec 2023 · 321pp · 113,564 words
by Edward Niedermeyer · 14 Sep 2019 · 328pp · 90,677 words
by Nick Couldry and Ulises A. Mejias · 19 Aug 2019 · 458pp · 116,832 words
by Frank Pasquale · 14 May 2020 · 1,172pp · 114,305 words
by Stefan Al · 11 Apr 2022 · 300pp · 81,293 words
by Matthew Brennan · 9 Oct 2020 · 282pp · 63,385 words
by Brad Feld and David Cohen · 18 Oct 2010 · 326pp · 74,433 words
by Tom Vanderbilt · 28 Jul 2008 · 512pp · 165,704 words
by Brian Merchant · 25 Sep 2023 · 524pp · 154,652 words
by Bruno Macaes · 25 Jan 2018 · 287pp · 95,152 words
by Alec Ross · 13 Sep 2021 · 363pp · 109,077 words